文档库 最新最全的文档下载
当前位置:文档库 › python 拼图游戏代码

python 拼图游戏代码

python 拼图游戏代码
python 拼图游戏代码

# -*- coding: utf-8 -*-

import simpleguitk as simplegui

import random

# 载入外部图像

baymax = simplegui.load_image("https://www.wendangku.net/doc/e58957169.html,/c4x/XJAU/CS101/asset/baymax.jpg")

# 定义常量

# 画布的尺寸

WIDTH = 600

HEIGHT = WIDTH + 100

# 图像块的边长

IMAGE_SIZE = WIDTH / 3

# 图像块坐标列表

all_coordinates = [[IMAGE_SIZE*0.5, IMAGE_SIZE*0.5], [IMAGE_SIZE*1.5, IMAGE_SIZE*0.5],

[IMAGE_SIZE*2.5, IMAGE_SIZE*0.5], [IMAGE_SIZE*0.5, IMAGE_SIZE*1.5],

[IMAGE_SIZE*1.5, IMAGE_SIZE*1.5], [IMAGE_SIZE*2.5, IMAGE_SIZE*1.5],

[IMAGE_SIZE*0.5, IMAGE_SIZE*2.5], [IMAGE_SIZE*1.5, IMAGE_SIZE*2.5], None] # 棋盘行列数

ROWS = 3

COLS = 3

# 移动步数

steps = 0

# 保存所有图像块的列表

board = [[None, None, None],

[None, None, None],

[None, None, None]]

# 图像块类

class Square:

def __init__(self, coordinate):

self.center = coordinate

def draw(self, canvas, board_pos):

canvas.draw_image(baymax, self.center, [IMAGE_SIZE,

IMAGE_SIZE],[(board_pos[1]+0.5)*IMAGE_SIZE, (board_pos[0]+0.5)*IMAGE_SIZE], [IMAGE_SIZE, IMAGE_SIZE])

# 初始化拼图板

def init_board():

# 打乱图像块坐标

random.shuffle(all_coordinates)

# 填充拼图板

for i in range(ROWS):

for j in range(COLS):

idx = i * ROWS + j

square_center = all_coordinates[idx]

if square_center is None:

board[i][j] = None

else:

board[i][j] = Square(square_center)

# 重置游戏

def play_game():

global steps

steps = 0

init_board()

# 绘制游戏界面各元素

def draw(canvas):

# 画黑框

canvas.draw_polygon([[0, 0], [WIDTH, 0], [WIDTH, WIDTH], [0, WIDTH]], 1, 'Black')

# 画目标图像

canvas.draw_image(baymax, [WIDTH/2, WIDTH/2], [WIDTH, WIDTH], [50, WIDTH+50], [98, 98]) # 画步数

canvas.draw_text("步数:"+str(steps), [400, 680], 22, "White")

# 画图像块

# 代码写在这里

for i in range(ROWS):

for j in range(COLS):

if board[i][j] is not None:

board[i][j].draw(canvas, [i, j])

def mouseclick(pos):

global steps

# 将点击位置换算成拼图板上的坐标

r = int(pos[1] // IMAGE_SIZE)

c = int(pos[0] // IMAGE_SIZE)

if r < 3 and c < 3: # 点击位置在拼图板内才移动图片

if board[r][c] is None: # 点到空位置上什么也不移动

return

else:

# 依次检查当前图像块的上,下,左,右是否有空位置,如果有就移动当前图像块

# 代码写在这里

current_square = board[r][c]

if r - 1 >= 0 and board[r-1][c] is None: # 判断上面

board[r][c] = None

board[r-1][c] = current_square

steps += 1

elif c + 1 <= 2 and board[r][c+1] is None: # 判断右面

board[r][c] = None

board[r][c+1] = current_square

steps += 1

elif r + 1 <= 2 and board[r+1][c] is None: # 判断下面

board[r][c] = None

board[r+1][c] = current_square

steps += 1

elif c - 1 >= 0 and board[r][c-1] is None: # 判断左面

board[r][c] = None

board[r][c-1] = current_square

steps += 1

# 创建框架

frame = simplegui.create_frame("拼图", WIDTH, HEIGHT)

frame.set_canvas_background("Black")

frame.set_draw_handler(draw)

frame.add_button("重新开始", play_game, 60)

# 注册鼠标事件

frame.set_mouseclick_handler(mouseclick) # 初始化游戏

play_game()

# 启动框架

frame.start()

12岁的少年教你用Python做小游戏

你有没有想过电脑游戏是怎样制作出来的?其实它没有你想象的那样复杂!在这个教程里,你要学做一个叫《兔子和獾》的塔防游戏,兔子作为英雄,需要在城堡里抵御獾的进攻。 为了写这个游戏的代码,你将会用Python。好吧,我不是指一条大蟒蛇!Python是一种计算机语言。我们在这篇教程里选择Python是因为这门语言很容易上手,学习起来也很简单和有趣。 如果你是个Python方面的新手,在开始看教程之前你可以看看这本书《Think P ython: How to Think Like a Computer Scientist》。这能让你看教程的时候不那么吃力。 在看了那本书后回到这里并且准备好——兔子和獾之间有一场大战爆发,一起来加入到这场战斗中来吧!

1 2 3 4 Python 2.7.3 (v2.7.3:70274d53c1dd, Apr 9 2012, 20:52:43) [GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> 注意:如果你想迅速终止Python,你可以输入exit()然后按回车,或者是按Contr ol+D。 现在很迅速的把Python环境配置好了,为了测试下Python是否正常工作,输入print 1+1 然后按回车,应该会打印出2。你刚才就写了一个简单的Python程序!

1 Python 2.7. 2 (default, Jun 20 2012, 16:23:33)

数字拼图游戏

安徽新华学院计科软件测试方法和技术 课程设计任务书 一、设计题目:数字拼图游戏(出题人:於世芳) 说明:一个拼图游戏。 二、目的与要求 1.目的 培养学生综合利用JAVA语言进行程序设计的能力,主要是培养学生利用JAVA的标准控件进行应用程序设计的技能。 2.基本要求 ?能够实现拼图功能。 ?可以通过初始化任意次的重新游戏。 ?游戏完成后做出相应提示. 3.创新要求 在基本要求达到后,可以参考其他拼图游戏,进行创新设计,创新方向提示如下: ★将数字换成图片。 ★可以记录游戏者成绩并排行 ★增加暂停功能或窗口最小化时暂停计时。 三、设计方法和基本原理 1.问题描述 程序界面见题图。 2.问题的解决方案 ①设计程序界面 因为用的全是基本控件,界面设计没有什么难度,这里涉及到动态添加控件数组,可参见课本控件数组一节内容。 ②编写代码 代码包括事件处理过程和功能函数,还有必要的声明。变量声明部分声明本程序所需要的变量和数组。

事件处理包括下面的主要事件: Form_Load() 作一些初始化的工作。主要是设定初始等级,动态添加控件数组。 Private Static Sub cmdButton_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single) 游戏运行。 cmd_Click( ) 游戏初始化 其它功能的处理不再一一描述了 四、主要技术问题的描述 虽然界面操作有些复杂,但难点显然并不在于此。下面是初始化设置中的一段程序:package { import flash.display.Sprite; import flash.events.MouseEvent; import flash.events.Event; import flash.text.TextField; //import mx.controls.Alert; public class Main extends Sprite{ var arr:Array=new Array(1,2,3,4,5,6,7,8); var ditu:Array=new Array(new Array(3),new Array(3),new Array(3)); var pailie:Array=new Array(new Array(0,0),new Array(40,0),new Array(80,0), new Array(0,40),new Array(40,40),new Array(80,40), new Array(0,80),new Array(40,80),new Array(80,80));

Python-大作业之五子棋游戏(附代码)

Python 大作业——五子棋游戏 姓名:学号: 姓名:学号: 一游戏介绍: 我们设计的是五子棋游戏,支持两人一个鼠标对下,黑方用左键单击,白方用右键单击,谁先下均可,落子无悔,下过的棋子对方点击后不会变色,程序可自行判断输赢并在五子连珠时弹出结果对话框,游戏双方需遵守不在空地点击和一次下一子的规则。 二游戏代码设计: 代码均为原创,没有借鉴和抄袭,首先是用户GUI界面设计,点击start进入游戏界面,点击quit则退出程序,为了方便判断和记录,我们按从左到右,从上到下的顺序给15x15=225颗棋子编号225,左键绑定函数callback1,点击后可算出它位于哪颗棋子上再画出来黑子,并把对应编号计入record这个列表,之后进入判断函数。右键绑定函数callback2,点击后画出白子,对应编号计入recor这个列表,之后进入判断函数,其中总列表rec的作用是使棋子不被下第二遍。 三作业感想 这个游戏虽然很小但是可以供室友们晚上娱乐之用,我们倾注了很多心血,之前采用模块化编程失败了很多次,有事件响应问题,参数传递问题,到第七个程序才成功,感谢张同珍老师指点了很多,

我们学会了使用类,受益匪浅,对Python产生了浓厚的兴趣。四过程截图 五、实验代码 from Tkinter import * from tkMessageBox import * class Game: def __init__(self): self.A=[] self.B=[] self.record=set()

self.recor=set() self.rec=self.record|self.recor self.root=Tk() self.root.geometry("180x250") self.root.title("Wu Zi Qi Game") self.r=Canvas(self.root,width=180,height=210,bg="purple") pic=PhotoImage(file="beijing.gif") self.r.create_image(90,100,image=pic) self.r.place(x=0,y=15) Label(self.root,text="***Wu Zi Qi Game***",fg="red").place(x=20,y=0) Button(self.root,text="start",command=self.start).place(x=30,y=230) Button(self.root,text="quit ",command=self.root.destroy).place(x=100,y=230) self.r.mainloop() def start(self): self.root.destroy() self.top=Tk() self.top.title("Game Start") self.c=Canvas(self.top,width=480,height=480,bg="white") self.c.pack() self.c.create_rectangle(25,25,455,455,fill="gray") for i in range(30,451,30): for j in range(30,451,30): self.c.create_oval(i-2,j-2,i+2,j+2,fill="blue") for i in range(1,16): self.c.create_line(30,30*i,450,30*i) self.c.create_line(30*i,30,30*i,450) self.c.create_oval(234,234,246,246,fill="black") self.c.create_oval(115,115,125,125,fill="black") self.c.create_oval(355,115,365,125,fill="black") self.c.create_oval(115,355,125,365,fill="black") self.c.create_oval(355,355,365,365,fill="black") self.c.bind("",self.callback1) self.c.bind("",self.callback2) self.c.mainloop() def callback1(self,event): u,v=event.x,event.y s=u/15 if s%2==1: self.x=(s+1)/2 else: self.x=s/2

java课程设计-拼图游戏代码

package love; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Random; import javax.swing.*; public class Games extends JFrame implements ActionListener { private JButton buttons[][];// 存储按键的数组 private Container container;// 一个容器 private GridLayout layout;// 布局方式为GridLayout private int count = 0, is[] = new int[8];// count的作用是计算按键移动的次数,is[]储存一个随机产生的1到8数字数组 public Games() { super("拼图游戏");// 设置标题 layout = new GridLayout(3, 3);// 3行3列 container = getContentPane();// 该容器的布局方式,及其重要,否则产生空引用异常 container.setLayout(layout);// 将该布局方式作用于容器 buttons = new JButton[3][3];// 给按键数组分配储存空间 int locate1, locate2;// locate1用来指示当前产生的元素 locate2用来指示locate1之前的元素 for (locate1 = 0; locate1 < 8; locate1++) {// 该方法作用是产生1到8这8个数,随机分配给数组,即无序排列 int g = new Random().nextInt(8) + 1;// 随机产生一个空白按键,即不显示的那个 is[locate1] = g; for (locate2 = locate1 - 1; 0 <= locate2; locate2--) { if (is[locate1] == is[locate2]) break; } if (locate2 != -1) locate1--; } int temp = 0; int r = new Random().nextInt(3);// 随机产生一个0到3的数,代表空白按键的行 int l = new Random().nextInt(3);// 随机产生一个0到3的数,代表空白按键的列 for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) {

Flash游戏制作

Flash游戏制作 一,概述 Flash是美国著名的多媒体软件公司Macromedia开发的矢量图形编辑和交互式动画制作软件。该软件的功能十分强大,在网页设计和多媒体制作等领域得到了广泛的应用,已经成为制作网络互动游戏的标准软件。Flash从Flash 4.0到Flash Professional 8,随着Flash技术的发展,Flash的功能越来越强大,使得制作较为复杂的互动游戏成为可能。由于Flash互动游戏能够满足网络媒体的传输需要,越来越多的传统游戏开发人员转为Flash用户,广大闪客为了兴趣爱好也来制作Flash游戏娱己娱人,同时,商家把Flash互动游戏作为新产品推广和营销的重要手段。 二,Flash设计游戏的优势与弱点 优势: 1.矢量图形绘制,放大不失真 2.文件量小,适于网络传输 3.跨平台、跨设备,具有良好的富媒体客户环境 4.日益强大的ActionScript?,交互性更好 5.丰富的媒体支持功能,使产品更美观 6.流式播放,下载速度快 7.图形界面,易学易用 弱点: 1.对于复杂图形,运算速度慢 2.位图、三维图像及视频播放能力弱 3.与硬件及操作系统沟通能力差 4.开发团队合作分工不方便

三、游戏的种类 凡是玩过PC游戏或者TV游戏的朋友一定非常清楚,游戏可以分成许多不同的种类,各个种类的游戏在制作过程中所需要的技术也都截然不同,所以在一开始构思游戏的时候,决定游戏的种类是最重要的一个工作,在flash可实现的游戏范围内,基本上可以将游戏分成以下几种类型: 动作类游戏(Actions) 凡是在游戏的过程中必须依靠玩家的反应来控制游戏中角色的游戏都可以被称做“动作类游戏”。在目前的flash游戏中,这种游戏是最常见的一种,也是最受大家欢迎的一种,至于游戏的操作方法,即可以使用鼠标,也可以使用键盘。此类游戏的典型代表是“著名的动作游戏”小小作品二号一过关斩将”和”碰碰拳打”,分别如图1和图2所示: 益智类游戏(Puzzle) 此类游戏也是Flash比较擅长的游戏,相对于动作游戏的快节奏,益智类游戏的特点就是玩起来速度慢,比较幽雅,主要来培养玩家在某方面的 智力和反应能力,此类游戏的代表非常多,比如牌类游戏,拼图类游戏,棋类游戏等等,总而言之,那种玩起来主要靠玩家动脑筋的游戏都可以被称为益智类游戏。图3,图4,图5分别为牌类游戏,拼图类游戏,棋类游戏的典刑代表: 角色扮演类游戏(RPG) 所谓角色扮演类游戏就是由玩家扮演游戏中的主角,按照游戏中的剧情来进行游戏,游戏过程中会有一些解谜或者和敌人战斗的情节,这类游戏 在技术还不算难,但是因为游戏规模非常大,所以在制作上也会相当的复杂。图6为一个典型的角色扮演类游戏: 射击类游戏(Shotting) 射击类游戏在flash游戏中,占有绝对的数L优势,因为这类游戏的内部机制大家都比较了解,平时接触的也较多,所以做起来可能稍微容易点,图7为1个典型的射击类游戏: 素材的收集 图形图象的准备

VB制作拼图游戏

《VB制作拼图游戏:简单算法》1、首先按照截图把控件添加好! (技巧:PS处理322*322的图片,划分切块,形成九个小图片,这里采用的是Jpg格式,然后采用Command按钮来显示这些图片,同学们也可以采用Label,是一样的,重点是鼠标单击事件!注意:添加九个Command按钮,一定要设置每个按钮的Height、Width、Top、Left值来完成对图片的吻合拼接,这样可以使界面看起来美观大方!) 2、界面的设计 这里很多同学习惯更改Command的Caption值来显示某些文本,但要注意,你

这里很可能为了美观会使用自己机子上单独安装的某些字体,这些字体拿到其他机子上是不生效的,那么怎么办呢?这里有个比较“笨拙的方法”——你可以利用Word工具打好想要显示的文本,设置个性字体,然后截图,插入到Command上面,这样的话,无论是什么字体,都可以显示了,因为图片的属性是无法更改的!这个方法同样可以用来美化Label!当然了,自己究竟怎么样设计,就靠想象力了,最终得到的效果是要有一个美观、简洁大方的界面! 3、算法设计(全部代码) Dim Num As Integer Private Sub Command1_Click() If Command2.Picture = Command11.Picture Then Command2.Picture = Command1.Picture Command1.Picture = Command11.Picture End If If Command4.Picture = Command11.Picture Then Command4.Picture = Command1.Picture Command1.Picture = Command11.Picture End If End Sub Private Sub Command11_Click() MsgBox ("开发者:孔世明" & vbCrLf & "学院:信息科学与技术学院" & vbCrLf & "专业:

Flash拼图游戏制作课程设计报告

目录 第1章需求分析 (1) 1.1 引言 (1) 1.2 课程设计题目 (1) 1.3 课程设计目的 (1) 1.4 程序运行环境及开发工具 (1) 1.5 课程设计任务及要求 (1) 第2章概要设计 (2) 2.1 设计原理及方法 (2) 第3章详细设计 (3) 3.1 第一步: (3) 3.2 第二步: (3) 3.3 第三步 (4) 3.4 第四步 (5) 3.5 第五步 (5) 3.6 第六步 (6) 3.7 第七步 (7) 3.8 第八步 (8) 3.9 第九步 (8) 3.10 第十步 (9) 3.11 第十一步 (9) 3.12 第十二步 (10) 3.13 第十三步 (10) 3.14 第十四步 (11) 第4章系统调试与运行结果 (13) 4.1 系统调试 (13) 4.2 运行结果 (14) 第5章总结与体会 (15) 参考文献: (15)

第1章需求分析 1.1 引言 FLASH作为一款目前最流行的网络动画制作软件,恐怕不知道的人少之又少。其实FLASH强大的功能不光能让我们轻松制作动画,我们还可以利用它完成一些意想不到的工作。比如说是拼图游戏,在这个领域应用非常广泛!而且可以制作各种丰富有趣的小游戏来,是非常的有趣的! 1.2 课程设计题目 拼图游戏设计 1.3 课程设计目的 本课程的设计的目的是通过实践使同学们经历多媒体应用系统开发的全过程和受到一次综合训练,以便能较全面地理解、掌握和综合运用所学的知识。结合具体的案例,理解并初步掌握常用多媒体软件的使用,利用多媒体计算机等设备进行音频与视频数据的获取和处理、图像处理与图像文件格式转换、超文本超媒体在交互式多媒体软件的应用;通过《多媒体课程设计》实验,使学生能够达到提高多媒体技术的实际开发应用能力,了解系统分析、系统设计、系统实施的主要环节和步骤以及软件文档的制作过程。 1.4 程序运行环境及开发工具 硬件:PC机一台 软件:Windows 7,PhotoshopCS4,Flash8 1.5 课程设计任务及要求 设计“拼图游戏”,游戏是Flash制作中很重要的一部分,主要应用的是flash内

Java语言实现拼图游戏源代码

Java语言实现拼图游戏源代码 /* * JA V A小游戏-拼图我做的第一个小游戏 * Cell类是继承的按钮类,并加上相应图形,形成方格 *MyCanvas是一个面板,加载Cell类的对象(方格),是这三个类中的核心*/ import java.awt.Rectangle; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JOptionPane; import javax.swing.JPanel; import java.awt.BorderLayout; import java.awt.Button; import java.awt.Choice; import java.awt.Color; import java.awt.Container; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.Icon; import javax.swing.JButton; public class MyMainFrame extends JFrame implements ActionListener { MyCanvas myCanvas; JPanel panelNorth,panelPreview;//定义上方的面板,及预览所需的面板Button start,preview,set;//定义开始,预览,设定按钮 Container container;//容器,得到内容面板 public MyMainFrame() {//初使化 container=this.getContentPane(); start=new Button("开始"); start.addActionListener(this); preview=new Button("预览");

第8单元flash制作拼图游戏

………………………………………………………………………………………………………………………………………………………… 第8单元 flash 实例制作拼图游戏 学习目标:学会对图像分割处理,简单设置动作代码 学习难点:设置动作代码 学习资源:图像若干,鼠标拖动代码 复习:自由落体与小球碰撞动画。 新课: 一、展示拼图游戏动画 教师演示拼图游戏动画的例子,分析图像块是放在右边区域,位置是随机的。图像块的拖动需要代码实现。 二、制作 将舞台设置为800*600。图像分割:选中一张自己喜欢的图像,拖到舞台上,将图层改为图块层,设置图像大小为300*300,位置x,y 都设置为0。将图像分离,增加一层(改为分割层),在其中画直线,将图像分成 9块,打开标尺,尽量分成一样的 大小。然后将所有直线复制到图块 层(粘贴到当前位置),这样图像 就被分成了9块。将图块拖到右边 空白区域,删除分割线。选中第一块图像,将其转换成影片剪辑元件, 复备区

………………………………………………………………………………………………………………………………………………………… 命名为t1。同样对其它8个图块也作这样的设置(t2-t9)。 选中此影片剪辑,在下面的属性中,在实例名称处输入t1。同样对其它8个图块也作这样的设置(t2-t9)。 选中t1影片剪辑,单击动作,将影片剪辑鼠标拖动代码复制过来。 on (press) { startDrag(this); } on (release) { stopDrag(); } 同样对其它8个图块(t2-t9)也作这样的设置。 再增加一层,改为背景,将图像拖进来,改为300*300,x,y 为0,转换成图形元件,并将alpha 设置为10%。 回到分割层,沿着图像加个四边形,去除多余的线,形成9个方格区域。选中方格将线条粗细改为3。 图块随机排放:增加一层,选中空白关键帧,单击动作,将随机排放代码复制过来。 stop(); for (i=1; i<=9; i++) { eval("t"+i)._x = random(300)+400;//随机设置图块的位置于场景一定区域内 eval("t"+i)._y = random(450)+50; } 保存测试。 三、小结

数字排序拼图游戏

数字排序拼图游戏 【摘要】:Java语言的学习热潮并没有因为时间的推移而消退,相反,由于计算机技术的发展所带来的新应用的出现,Java越来越流行,这种情况是以往程序设计语言在其生存周期内所不多见的。Java语言之所以这样长盛不衰,一是因为其众多的技术特点与现今的应用十分合拍,可以覆盖大部分的需求;二是因为SUN公司不断推出新的版本,完善Java自身的功能。有了这两点,Java语言成为程序员首选的程序设计开发工具就在情理之中了。 【关键字】:Java;发展;程序设计 一引言 现代科学技术的发展,改变了人类的生活,作为新世纪的大学生,应该站在时代发展的前沿,掌握现代科学技术知识,以适应社会的发展,能够独立完成面临的任务,作为一名有创新意识的新型人才。 拼图游戏是广受欢迎的一种智力游戏,它的变化多端,难度不一,让人百玩不厌。个性化的拼图,拼凑的不仅仅是一张照片,而是一个故事,一段回忆,一缕温情。每一片的单片都有它自己的位置,就像每段回忆都有它的故事,你要将它放在专属的地方,放对了就慢慢丰富起来,放错了就无法完整。 二设计大作业的目的与要求 1.1 设计目的 JSP/JAVA是计算机相关专业的必修专业基础课程,其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。本课程的程序设计专题实际是计算机相关专业学生学习完JSP/JAVA课程后,进行的一次全面的综合训练,JAVA程序的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及其在网络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。

如何使用ppt制作图片拼图游戏

如何使用ppt制作图片拼图游戏 篇一:教你如何做拼图游戏 (1)准备一张图片,长和宽是比较好的整数像素点,例如800*500等,以下面这幅图为例,将它水平分4份,垂直分4份(2)使用图片拆分器对图片进行 调整好数据,这个软件会把拆分结果,直接放到图片所在文件夹处,点下“等比拆分” (3)结果如下 (4)打开Dreamwaver,这里用的是CS5 (i)设置站点,这里的图片放在pingtu/img里面 (ii)建立网页,以pingtu.html为名 打开辅助功能 打开显示网格功能 这里介绍一下“网络设置”的两个属性,其他明显易懂 靠齐到网格:拖动或修改apdiv盒子时会发现网格有吸附功能间隔:主要控制网格的大小 绘制拼图区域,点击图中图标可快速绘制apdiv 点击之后,鼠标变成十字心,随便画一个apdiv再修改它的高和宽分别为500和800像素 为了使效果更好些,我们找了一张木板作为背景图片,最终效果如下

拆分后每个拼图单位为200*125的 再画16个200*125的apdiv将各个拼图单位插入,最终效果如下: 添加行为:所谓行为,可以看做是用户通过鼠标和网页的元素间进行的互动的方式,这里介绍其中一种。 篇二:拼图游戏制作 [教學]拼圖遊戲的製作你會了嗎? A. 在Photoshop裡先製作出拼圖的切圖動作 步驟一.選擇"切圖選取工具"後選擇"分割"選項 步驟二.自己隨意切割數量 步驟三.在檔案下選取"儲存為網頁用" 步驟四. 1.選JPEG 2.按儲存後會出現"另存最佳化檔案"的視窗 3.存檔類型:HTML和影像 4.切片:全部切片 5.自己開一個資料夾 6.檔名自取 7.儲存 註:存完後會發現建立的資料夾裡會出現一個HTML檔和一包"images"的資料夾 B.在Dreamweaver下完成拼圖的製作

少儿编程分享:手把手教你用Python编写战斗机游戏(一)

游戏分享:手把手教你用Python编写 战斗机游戏 2018.1.23 游戏制作 今天我们要分享的是战斗机游戏!在这个游戏中,飞机(游戏主角)需要躲避迎面飞来的炮弹(敌人)。 下面让我们一起来看一下如何编写这个小游戏吧! 初始设置 首先,创建一个新的.py文件然后置入下面的代码: import pygame from pygame.locals import* pygame.init() 和其他所有python程序一样,我们要首先导入(import)我们所要使用的模块(module)。在今天这个例子里,我们要导入pygame以及pygame.locals,以用于后面的内容。最后一行pygame.init()将所有的PyGame模块初始化,在我们正式开始写PyGame的“正文内容”之前,都要先加上这一行。 屏幕对象 首先,我们需要为所有的物体创建一个画布窗口,我们把这个变量叫做screen。为了创建这个变量,我们需要调用pygame.display下的set_mode()方法(method),并向set_mode()传递一个元组(tuple)来表示窗口的高和宽(在这里我们设置一个高800宽600的窗口)。 import pygame

from pygame.locals import* pygame.init() screen=pygame.display.set_mode((800,600)) 现在,如果你运行程序,你将会看到一个窗口突然出现,并在我们退出程序时马上消失。看来我们已经成功创建了画布!在下一部分,我们将加入游戏的main循环,这样我们就能确保只有我们输入正确的退出命令时,程序才会退出。 游戏循环 游戏的主循环内包含了所有要发生的事件。当我们玩游戏时,这段程序一直在运行。它能够不断更新游戏的状态,渲染游戏屏幕效果,并且收集玩家输入的指令。除了让主循环在游戏进行中不断执行,我们也需要让循环在我们退出程序时停止。因而,我们需要引入一些相应的指令,让程序能够在这些指令输入(input)时作出相应的反应。所有输入的指令(以及之后一些其他的事件)都会进入PyGame 的事件队列中,我们可以通过pygame.event.get()来得到这些事件。这个命令会返回队列中的事件列表,在游戏中,程序将对这些事件进行循环,并且根据事件的类别作出相应的反应。在下一段代码中,我们要处理的是KEYDOWN和QUIT事件: #用于让主循环不断运行的变量 running=True #主循环 while running: #针对事件队列的for循环 for event in pygame.event.get(): #检测是否有KEYDOWN事件,KEYDOWN是一个在pygame.locals中定义了的事件常量,这个库我们之前导入过 if event.type==KEYDOWN: #如果按了ESC键,把running的值设为False,并退出主循环 if event.key==K_ESCAPE: running=False #检测是否有QUIT事件,如果有的话,把running的值设为Flase elif event.type==QUIT:

拼图游戏C#代码

声明:本游戏由14477-Ly所写,可以转载,须说明出处 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { public static int x1, y1;//定义两个数用来移动数组作为参考坐标 static int[,] ss = new int[20, 20];//定义一个静态二维数组做为参考数组 static int[,] sss = new int[20, 20];//定义一个静态二维数组做为移动数组 static bool pan = false;//判断真假值用于程序跳出 static int iii = 0;//用于统计步数 static int[,]paixu=new int[20,20];//用来存储对应难度的排行榜 static int[] tongjishuzu = { 0,0,0,0,0,0,0};//统计各难度的排行 static bool yanse11 = false;//用来判断是否产生随机背景颜色 static bool yanselll = false;//用来判断是否产生随机字体颜色 ///

/// 对数组进行排序 /// /// /// public static void paixushuzu(int x,int nandu)//用直接选择排序方式对排行榜进行排序 { if (x > 10) x = 10; for (int i = 1; i < x; i++)//用直接选择排序方式对排行榜进行排序 { int b = 0; for (int j = 0; j <= x - i; j++) { if (paixu[nandu - 3, j] >= paixu[nandu - 3, b]) b = j; else continue; } int h; h = paixu[nandu - 3, b]; paixu[nandu - 3, b] = paixu[nandu - 3, x - i]; paixu[nandu - 3, x - i] = h; }

Python 俄罗斯方块游戏

【Python】用Python实现一个俄罗斯方块游戏 俄罗斯方块游戏,使用Python实现,总共有350+行代码,实现了俄罗斯方块游戏的基本功能,同时会记录所花费时间,消去的总行数,所得的总分,还包括一个排行榜,可以查看最高记录。 排行榜中包含一系列的统计功能,如单位时间消去的行数,单位时间得分等。 附源码: from Tkinter import* from tkMessageBox import* import random import time #俄罗斯方块界面的高度 HEIGHT=18 #俄罗斯方块界面的宽度 WIDTH=10 ACTIVE=1 PASSIVE=0 TRUE=1 FALSE=0 root=Tk();root.title('Russia') class App(Frame): def__init__(self,master): Frame.__init__(self) master.bind('',self.Up) master.bind('',self.Left) master.bind('',self.Right) master.bind('',self.Down) #master.bind('',self.Space) master.bind('',self.Space) master.bind('',self.Play) master.bind('',self.Pause) self.backg="#%02x%02x%02x"%(120,150,30) self.frontg="#%02x%02x%02x"%(40,120,150) self.nextg="#%02x%02x%02x"%(150,100,100) self.flashg="#%02x%02x%02x"%(210,130,100) self.LineDisplay=Label(master,text='Lines:',bg='black',fg='red') self.Line=Label(master,text='0',bg='black',fg='red') self.ScoreDisplay=Label(master,text='Score:',bg='black',fg='red') self.Score=Label(master,text='0',bg='black',fg='red') #Display time self.SpendTimeDisplay=Label(master,text='Time:',bg='black',fg='red') self.SpendTime=Label(master,text='0.0',bg='black',fg='red') self.LineDisplay.grid(row=HEIGHT-2,column=WIDTH,columnspan=2)

java语言实现拼图游戏源代码

java语言实现拼图游戏源代码 Java语言实现拼图游戏源代码 /* * JAVA小游戏,拼图我做的第一个小游戏 * Cell类是继承的按钮类,并加上相应图形,形成方格 *MyCanvas是一个面板,加载Cell类的对象(方格),是这三个类中的核心 */ import java.awt.Rectangle; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JOptionPane; import javax.swing.JPanel; import java.awt.BorderLayout; import java.awt.Button; import java.awt.Choice; import java.awt.Color; import java.awt.Container; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.Icon; import javax.swing.JButton; public class MyMainFrame extends JFrame implements ActionListener { MyCanvas myCanvas; JPanel panelNorth,panelPreview;//定义上方的面板,及预览所需的面板 Button start,preview,set;//定义开始,预览,设定按钮

用Flash制作拼图游戏,制作flash拼图游戏

用Flash制作拼图游戏,制作flash拼图游戏 https://www.wendangku.net/doc/e58957169.html,/aatd/blog/item/32a4d2a26ef0a6adcbefd07c.html 首先,让我们来构思一下游戏的大致样子:画面上散落着N多块碎图片,透过这些碎图片我们可以隐约看到后面的一块方形的区域,然后在屏幕的右边赫然写着几个大字——简易拼图游戏。OK,构思完毕,下面我们就开做吧。 一、制作图块 1.拼图拼图,没图怎么做拼图呢?所以,我们得先找张图片过来,并将其导入到Flash中。 选择File>Import,导入要做为拼图素材的图片。 2.选中刚刚导入的图片,选择Modify>Transform>Scale,将图片的大小重新进行调整。 3.调整完图片大小后,按Ctrl+B将其打散。 4.选择直线工具,在图片上画个十字,将图片分为四块。因为本例只是要介绍制作拼图的原理,所以这里就只做四个图块。 5.按Ctrl+Alt+Shift+R,显示标尺,然后从标尺上拉出线重合。 6.按Ctrl+Alt+;锁定引导线。接着按住Ctrl键然后用鼠标在四条黑线边界的中间拉出一个拐点。 7.再次按住Ctrl键将突起的两端拉回,形成一个小三角(如图1)。 8.使用鼠标将小三角变形成小圆弧(如图2)。 图2 9.单击选中左上角的那块图片,按F8弹出元件属性对话框。在Name中输入g1,然后将Behavior选为Graphic,单击OK后将所选图片转化为图形元件g1。

同样地,将剩下的另外三块图片使用同样的方法分别转化为图形元件g2、g3、g4。然后将刚才用来分割图片的黑线删除。 10.选中g1、g2、g3、g4四个元件,按Ctrl+C拷贝一份。 11.按Ctrl+V将刚才复制的元件粘贴上来。 12.单击选中g1,按F8弹出元件属性对话框。在Name中输入b将Behavior 选为Button,单击OK后将所选元件g1转化为按钮元件b1。 同样地,将剩下的另外三块图片使用同样的方法分别转化为按钮元件b2、b3、b4。 13.单击选中b1,按F8弹出元件属性对话框。在Name中输入m1,然后将Behavior 选为Movie Clip,单击OK后将所选元件b1转化为影片剪辑m1。 同样地,将剩下的另外三块图片使用同样的方法分别转化为影片剪辑m2、m3、m4。至此,所需的图块已全部制作完成。接下去该是做游戏的背景了。 二、制作背景 1.将当前层的名字改为“图块”。在当前层的下面再新建一层并取名为“背景”。 2.选中刚才复制出来放在一边备用的的群组对象,按Ctrl+X剪切之。 3.选中“背景”层,按Ctrl+V,将图片对象粘贴到这一层上。 4.双击群组进入编辑状态,选中所有图形元件。按Ctrl+I打开实例面板,将Behavior改为Movie Clip(如图3)。 图3 5.选中左上角已变为Movie Clip的g1元件实例,在实例面板的Name中输入d1。同样的,分别将剩余的三块元件命名为d2、d3、d4。 6.选中所有元件,选择Window>Panels>Effect,打开效果面板。从列表中选择Tint效果,然后把Tint Color设置为黑色。 7.换上文字工具,在舞台的右边书上“简易拼图游戏”。 8.锁定“背景”层。

java拼图游戏完整代码

// Cell.java package cn.itcast.picture.ui; import javax.swing.Icon; import javax.swing.JButton; /* * 图片小方格类 */ public class Cell extends JButton { //带有图片的小方格 public Cell(Icon icon) { super(icon); //设置小方格大小 this.setSize(150, 150); } //带有图片和文字的小方格 public Cell(String text, Icon icon) { super(text, icon); //设置小方格大小 this.setSize(150, 150); this.setHorizontalTextPosition(CENTER);//设置文字水平居中显示 this.setVerticalTextPosition(CENTER);//设置文字垂直居中显示 } // public void move(String direction) { switch (direction) { case "UP": this.setLocation(this.getBounds().x,this.getBounds().y-150); break; case "DOWN": this.setLocation(this.getBounds().x,this.getBounds().y+150); break; case "LEFT": this.setLocation(this.getBounds().x-150,this.getBounds().y); break; case "RIGHT": this.setLocation(this.getBounds().x+150,this.getBounds().y);

相关文档