Egret社区

Lakeshore 新手教程

2015-7-13 20:14
765415
本帖最后由 yangning20008 于 2015-7-13 20:14 编辑

      
打开Lakeshore,点击菜单“文件”、“新建项目”,输入游戏名称和游戏尺寸,点击确定。新创建的游戏项目会自动创建一个场景和对应的事件表。如图7所示:
             图片7.png
   
图7
      导入图片素材      
在“项目”面板中右击“图片”文件夹,点击“添加图片素材”,在弹出的文件选择对话框中选择需要导入的图片。如图8所示:
             图片8.png
图8
      
在“项目”面板中点击导入的图片可以直接预览图片内容和尺寸。如图9所示:
             图片9.png
图9
      向场景中添加精灵      
选择“项目”中图片文件夹下的一张背景资源,将它拖动到场景中,就创建了一个精灵,在右侧属性栏中设置其名称为“滚屏背景”,并设置其它属性,如图10所示:
             图片10.png
图10
      添加行为      
点击属性栏最下面行为列表中的“添加行为”按纽,弹出“行为列表”属性框,并双击选择“滚屏行为”,即可将“滚屏行为”绑定到”滚屏背景“上,如图11所示:
             图片11.png
图11
      
绑定滚屏行为后,我们在行为列表中设置其滚屏方向为向下,如图12所示:
             图片12.png
图12
      
通常情况下,为了达到无缝滚屏,需要弄两张前后或者上下能够无缝连接的图片,这里的素材很特殊,上下达到了无缝连接,这里我们按住”Ctrl“键,鼠标拖动”滚屏背景“复制一份”滚屏背景“,设置其复制的”滚屏背景“基本属性,如图13所示:
             图片13.png
图13
      
认真对比图12与图13,你会发现,图13中的”滚屏背景“y坐标为-768,正好第一张”滚屏背景“连接起来,另外,复制之后,原图与复制的图名称一样,且如果原图添加了滚屏行为,那么,复制后的图也会添加上滚屏行为。
      
点击 Lakeshore 菜单栏“文件”-“运行”就可以在默认的浏览器中预览(这里以chrome为例测试),预览中你会发现背景已经能够实现无缝滚屏了,如图14所示:
             图片14.png
图14
      添加红色战机      
按住“项目”面板中图片文件夹下的红色战机,将它拖拽到场景中,选择“红色战机”精灵,可以直接拖拽精灵上的控制点来调整精灵的位置和旋转角度。在右侧属性栏中给精灵命名为“红色战机”,如图15所示:
             图片15.png
图15
      添加行为      
选中当前“红色战机”,在属性栏的最下方“行为列表”中点击“添加行为”。这里我们双击“拖拽行为”即可将“拖拽行为”绑定到此战机上。添加了拖拽行为后,此战机即可在手机上进行拖拽运动了,如图16所示:
             图片16.png
图16
      
然后,点击 Lakeshore 菜单栏“文件”-“运行”预览,用鼠标按住“红色战机”拖拽即可测试。如图17所示:
             图片17.png
图17
      添加子弹      
按照添加红色战机的操作步骤,选择一个子弹素材,拖拽到舞台。在基础属性栏中取名为”红色战机子弹“。按照“添加行为”操作给这个精灵添加“子弹行为”和“出边界销毁行为”,并在“行为列表”设置子弹行为参数中”设置角度“为”否“,其它默认。如图18所示:
             图片18.png
图18
      添加事件      
为了能够让”红色战机“发射子弹,因此,我们需要通过事件来将其进行关联起来,双击”“项目”栏中的事件表“MainSceneEventSheet”,在事件表中创建“红色战机发射子弹事件”,如图19所示:
       图片19.png
图19
      添加条件      
为了能够让“红色战机”能够持续的发射子弹,那么,我们需要添加相应的条件,比如0.1秒发射1颗子弹,选择“红色战机发射子弹事件”,点击面板右侧条件栏下的“添加条件”,在弹出的条件目标面板中选择“System”,如图20所示:
             图片20.png
图20
      
然后在“条件列表”选择“每多少秒执行一次”,如图21所示:
             图片21.png
图21
      
在弹出的属性设置面板中设定时间间隔为0.1,即1秒钟发射10颗子弹,如图22所示:
             图片22.png
图22
      添加动作      
注意这个时间单位为秒,设置好条件之后,就需要设置其动作,这里的动作为在“红色战机”所在的位置创建子弹,点击面板右侧条件栏下的“添加动作”,在弹出的动作目标面板中选择“红色战机”,如图23所示:
             图片23.png
图23
      
双击“红色战机”后,弹出“动作列表”,在动作列表中选择“制造”,如图24所示:
             图片24.png
图24
      
双击“制造”动作,在弹出的制造属性面板中选择“红色战机子弹”,并设置其垂直偏移值为-80,注意,这里的“水平偏移”与“垂直偏移”是相对坐标,即相对于红色战机的坐标,单位为像素,如图25所示:
             图片25.png
图25
      
点击 Lakeshore 菜单栏“文件”-“运行”进行预览,即可以看到红色战机连续发射子弹。如图26所示:
             图片26.png
图26
      
图26显示子弹是横向发射,这是因为我们没有设置子弹发射的角度,我们需要添加设置角度的动作,点击“添加动作”,弹出动作目标选择对话框,选择“红色战机子弹”,如图27所示:
             图片27.png
图27
      
双击“红色战机子弹”,弹出动作列表对话框,在动作列表中选择“设置角度”,如图28所示:
             图片28.png
图28
      
双击“设置角度”,弹出设置角度属性面板,修改角度为-90度,即方向朝上,如图29所示:
             图片29.png
图29
      
点击 Lakeshore 菜单栏“文件”-“运行”进行预览,即可以看到子弹已经按照正确的方向朝上发射了。如图30所示:
             图片30.png
图30
      添加敌机与敌机子弹      
按照“红色战机”与“红色战机子弹”操作方法,我们分别添加“敌人战机”和“敌人战机子弹”并给它们设定“子弹”行为和“出边界销毁”行为(注意:”出边界销毁“行为有助于提升游戏性能,避免内存泄露)。并设置“敌人战机”行为列表中“设置角度”为“是”,角度为90度,使其朝下,同样,设置“敌人战机子弹”行为列表中“设置角度”为是,角度为90度。即“敌人战机”与“敌人战机子弹”运动方向朝下,如图31所示:
             图片31.png
图31
      
同样为了让敌人能发射敌人子弹,在MainSceneEventSheet中添加事件“敌人战机发射敌人子弹事件”,并给事件添加条件“0.2秒1次”,动作“发射敌人战机子弹”,如图32所示:
             图片32.png
图32
      
点击 Lakeshore 菜单栏“文件”-“运行”进行预览,即可以看到如图33所示:
      
             图片33.png
图33
      
为了让“敌人战机”可以被我方的“红色战机子弹”打到,并产生伤害计算,那么,我们需要给“敌人战机”与“红色战机子弹”分别设置“参与碰撞”为是,选择“敌人战机”,在面板右侧的其它属性栏中设置参与碰撞为“是”,同样,对“红色战机子弹”也一样,如图34所示:
             图片34.png
图34
      
为了给“敌人战机”赋予生命,我们给“敌人战机”添加自定义属性hp,选择“敌人战机”,在属性栏“自定义属性”处点击“添加属性”,弹出自定义属性对话框,设置属性名称为:hp,值类型为:number,值为10,即“敌人战机”初始具有10点血。如图35所示:
             图片35.png
图35
      
为了让“红色战机子弹”碰撞到“敌人战机”时“敌人战机”减血,即每碰撞一次”敌人战机”的hp减1,那么,我们需要创建新的事件“红色战机子弹碰到敌人战机时减血事件”,并添加条件,如图36所示:
             图片36.png
图36
      
双击“红色战机子弹”,在弹出的条件列表中选择“碰撞”,如图37所示:
             图片37.png
图37
      
双击“碰撞”,在弹出的碰撞属性对话框中选择“敌人战机”,如图38所示:
             图片38.png
图38
      
此时,我们添加动作,让敌人战机hp减1,如图39所示:
             图片39.png
图39
      
双击“减法运算”,在弹出的“减法运算”属性框选择自定义属性hp,并设置值为1,如图40所示:
             图片40.png
图40
      
到目前为止,“红色战机子弹”如果碰到“敌人战机”将会减血,但是为了能够在实际效果中预览,我们还需要添加事件“敌人战机血量小于等于零后销毁事件”,并添加条件:如果“敌人战机”hp小于等于0,如图41所示:
             图片41.png
图41
      
双击“比较实例变量”,在弹出的属性对话框中,设置实例变量为hp,运算符为小于或等于,值为0,如图42所示:
             图片42.png
图42
      
并添加动作“销毁”,先选择“敌人战机”,如图43所示:
             图片43.png
图43
      
双击“红色战机”,选择动作“销毁”,如图44所示:
             图片44.png
图44
      
此时,“敌人战机”当血量hp小于或等于0时销毁,预览如图45:
             图片45.png
图45
      
预览我们发现,“红色战机子弹”会穿透“敌人战机”,此时,我们需要给“红色战机子弹”添加一个碰到“敌人战机”销毁的动作,选择“红色战机子弹碰到敌人战机时减血事件”这个事件,点击“添加动作”,在动作目标面板中双击选择“红色战机子弹”,并添加“销毁”动作,预览效果,发现“红色战机子弹”打“敌人战机”时不会穿透了,如图46所示:
             图片46.png
图46
      
一般情况下,战机类游戏都会有许多源源不断的敌人,因此,我们这里需要创建一个源源不断的敌人事件,事件名为:在场景中每2秒钟创建1个敌人事件,如上面所讲方式添加条件:每2秒钟执行一次,然后添加动作,点击“添加动作”,双击选择“System”,并选择“创建对象”,如图47所示:
             图片47.png
图47
      
双击“创建对象”,在弹出的创建对象属性面板中选择对象类型为“敌人战机”,在水平坐标中输入Math.random()*500,垂直坐标中输入Math.random()*200表达式,代表创建的敌人战机位置在水平坐标0~500,垂直坐标0~200之间,如图48所示:
             图片48.png
图48
      
预览,发现每隔2秒创建一个“敌人战机”,如图49所示:
      
             image50.png
图49
      
至此,游戏Demo完毕,但为了游戏性能与内存,我们需要给“红色战机子弹”、“敌人子弹”、“敌人战机”都添加“出边界销毁行为”。
      
最后,将我们做完的游戏发布即可,选择“文件”-“发布”即可发布我们的游戏,会弹出对话框提示我们要将我们的发布的游戏保存的路径,如图50所示:
             image51.png
图50
   

分享到 :
1 人收藏

15 个回复

倒序浏览
184367426  圆转纯熟 | 2015-7-13 20:29:01

沙发,哈哈 ,但是还没发现在哪里可以下载...
laofu  登堂入室 | 2015-7-13 23:26:42
是啊敢问在哪里下载乜
zyxyuanxiao  登堂入室 | 2015-7-14 08:57:55
这个是什么神器啊?
大雪无情  登堂入室 | 2015-7-14 14:16:39
感谢楼主,拜读了
fatsnake  初窥堂奥 | 2015-7-14 14:34:06
新的工具吗?
cy3502398  登堂入室 | 2015-7-14 15:31:45
Aven  初学乍练 | 2015-7-14 15:36:33
抄C2抄得不错啊~ 不知道什么时候能支持C2的第三方插件?
liuzhendongvip  初学乍练 | 2015-7-14 16:33:30
so coooooooooooooooooool
hahnhao  社区管理员 | 2015-7-14 18:52:50
SOGA 神器
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号

Powered by Discuz! X3.2 © 2001-2019 Comsenz Inc.

返回顶部