Construct2/3

创建于:2017-02-24

创建人: iconboy

100 信息 290 成员
Construct2/3 引擎开发专题
【索引】大神们分享C2的入门到进阶
totoyan 2017-03-02

前方高能!

前方高能!!

前方高能!!!

现在你进入的可能是C2/3国内第二活跃技术含量第二高的社区论坛!如找到第一请及时告诉我们加入!

QQ群:180911504这个可能是C2/3国内第二高活跃技术含量第二高的Q群!如找到第一请及时告诉我们加入!

---------------------------------------------------------伐丽的昏割线----------------------------------------------------------------------

        在百度C2贴吧,感谢@sppam前任吧主的整理的“【介绍+索引】欢迎来到 Construct 2 贴吧”很多萌新学习资料也在里面可以找到!

       而这里,新整理C2入门到进阶的索引,里面指向贴吧、C2官方论坛、INDIE NOVA C2C3小组等大神们分享的教程、经验、案例,希望可以帮助到小伙伴学习,同时感激这些无私分享的大神们!

       (小提示,利用ctrl+F可以查找关键词快速定位到你想要的教程~)

------------------------------------------------------------------------------------------------------------------------------------------------

C2基础教程篇

图文篇:

  1. 傅老师的APP開發線上教學@傅老師_台灣 

  2. <5.7 物件选取教学> 试读章节@傅老師_台灣 

  3. 【转】不写代码:教你如何快速制作h5独立小游戏(上篇)

  4. 【转】不写代码:教你如何快速制作h5独立小游戏(下篇)

视频篇:

  1. 傅子恒|美啊-见证射击的力量@傅老師_台灣 

  2. [視頻教學] 自製Google萬聖貓@傅老師_台灣 

------------------------------------------------------------------------------------------------------------------------------------------------

C2@傅老師_台灣 实例教程篇

  1. [Construct 2基礎] 平台遊戲中的子彈發射

  2. [教程] Rexrainbow Board系列教程 #1章

  3. [教程] Rexrainbow Board系列教程 #2章

  4. [教程] Rexrainbow Board系列教程 #3章

  5. [教程] Rexrainbow Board系列教程 #4章

  6. [教程] Android本地單機打包教程

  7. [Construct 2] 动态阴影的制作

  8. 为游戏添加Google Admob广告

  9. [CONSTRUCT 2範例] 超直覺Sprite高亮閃爍範例

  10. 【范例】 簡易迴旋鏢Boomera範例

  11. [Construct 2範例] Surface Bomb

  12. [CONSTRUCT 2範例] 以Board實現RPG直線隊伍移動

  13. [Construct 2與Node.js] #1 - 好用的Auto-reload Server

  14. [CONSTRUCT 2範例] 自行實現Platform sustain功能

  15. [CONSTRUCT 2範例] 動態水流效果

  16. [CONSTRUCT 2範例] Dungeon Crawl 範例 + 新書章節

  17. [CONSTRUCT 2範例] 收集魂魄效果(使用moveTo)





  • -------------------------------------------------------------------------------------------------------------------------

    C2大神@rexrainbow 分享篇

    (注:这里如果打不开网站请科学上网)

    1. plugins & behaviours 插件篇

    2. plugins & behaviours & effect 说明篇

    3. Demo 篇


    ------------------------------------------------------------------------------------------------------------------------------------------------

    C2进阶技巧分享篇

    1. 【经验】Steam4C2插件使用总结@potion 

    2. 简单易用的地图传送方法@47731089 (@慕雪白羊 )

    3.  范例 自定义键盘按键@47731089 (@慕雪白羊 )

    4. 可拓展的相机镜头控制@47731089 (@慕雪白羊 )

    5.  一个九宫格的合成系统@47731089 (@慕雪白羊 )

    6. 动作游戏范例 含蹭墙、爬梯等动作@47731089  (@慕雪白羊 )

    7.  Spriter快捷使用及导入Construct2的方法@xiaohandog 

    8. 简述Rex彩虹大大的“技能冷却系统”@xiaohandog 

    9.  说说十分好用的tokenat, tokencount函数 以及“? :”条件运算符@Vzad 

    10.  说说Sprite Font怎么用@Vzad 

    11.  【新手分享】 LocalStorage和Array@windy0704 

    12.  【转】用C2接PHP+SQL打造排行榜@totoyan72021 

    13. 【转】旋转tilemap内的瓷砖块@totoyan72021   

    14. 【转】无框的textbox的小技巧@totoyan72021 

    15.  【转】简易数组做库存@totoyan72021 

    16. 关于LightTween,分享一点东西@Vzad 

    17. [范例]初步数组道具背包@47731089(@慕雪白羊)

    18. [翻译]模拟蛇的行为@47731089(@慕雪白羊)

    19. 【经验】CSV学习心得@邱天

    20. 【白羊C2入门教程】之Construct2表达式系列 [beta]@47731089(@慕雪白羊)

    21. 【白羊C2入门教程】之Construct2表达式系列 [beta]@47731089(@慕雪白羊)

    22. 【RPG背包】全功能RPG背包+道具信息编辑器@47731089(@慕雪白羊)

    23. [UI示范]关卡选择界面(litetween插件动效)@47731089(@慕雪白羊)

    24. 简易的WebSocket服务器@chfreezer

    25. 【翻译】激光射击游戏示范@shuishen49

    26. 【分享】C2发布游戏的一个坑与解决方案@jokemon

    27. 超炫!C2下制作角色的围巾拖尾效果@potionc

    28. 如何制作黑暗环境中视野限制的效果@鑫晴

    29. 【翻译】激光射击游戏示范@shuishen49 

    30. 即时BUFF系统(数组)@47731089(@慕雪白羊)

    31. 游戏中加入计时器(倒计时效果)@鑫晴

    32. 如何对游戏性能优化@47731089(@慕雪白羊)

    33. Sine 行为 编辑器(含调用函数)@47731089(@慕雪白羊)

    34. [自制]JSONP 插件V1.1@47731089(@慕雪白羊)

    35. 【翻译】Construct 2 Javascript SDK 文档@47731089(@慕雪白羊)

    36. [翻译]Runtime 参考函数表@47731089(@慕雪白羊)











  • ------------------------------------------------------------------------------------------------------------------------------------------------

    C2游戏实例分享篇

    1. 自己做的撞球小游戏,欢迎下载@永远的蓝星之梦 

    2.  RunningDead steam版,大家体验一下给点意见呗@potionc 

    3. 【分享】 《学渣实验室》总共15关做完了。另外分享源码@windy0704  

    4. Construct2 游戏清单@鑫晴

    5. 像素艺术资源站点@鑫晴

    6. 【美术资源分享】适合横板射击游戏的美术资源@StoneFan1987 


    ------------------------------------------------------------------------------------------------------------------------------------------------

              最后

    • 所有文章索引会不定时更新;
    • 如分享链接内容触犯到原Po主权利请告诉我删除;
    • 感谢所有大神们的分享!
    【置顶】Construct2/3 版主管理内容和版主计划(本贴请勿回复)
    iconboy 2017-03-01
    1. 月初:做出本月计划
    2. 负责管理QQ群:180911504 的以下工作:
      • 新成员的审批
      • 聊天话题的维护
      • 成员咨询
      • 新闻公告的更新
    3. 负责Construct2.org 中文区论坛
      • QQ群的宣传
      • 将成员的话题归档
      • 翻译 scirra.com 官方的BLOG更新
      • 负责引导论坛成员的问题解答
    4. 负责C2/3 中文区的宣传
    5. 其它个人的计划和方法
    6. 月末总结:
      • 本月计划的完成情况总结
      • 总结QQ群的新增人数,活跃度的变化
      • 总结C2/3中文论坛的新增人数和话题量的变化
    7. 对下任版主进行交接
    【置顶】欢迎来到Construct2/3 讨论组,第一次来的朋友请看这里。
    iconboy 2017-02-24

    Image title

    欢迎来到Construct2/3 讨论组

    请记住我的网址  construct2.org construct3.org

    我的QQ群:180911504

    CiGA Construct2/3 开发者群的使命是聚集中文区的C2/3引擎开发者、创作者、爱好者的力量,让我们在C2游戏开发的过程中相互学习,共同进步。在这里,欢迎大家将平时碰到的问题提出来,同时也鼓励尽可能地去帮助那些需要帮助的朋友。同时,我们希望本群的用户可以在尊重版权的前提下,进行学习和分享,尊重他人也是尊重自己。同时,我们不支持任何形式的非法和违禁话题。最后希望大家可以共同的努力,让C2/3引擎在中文领域,发挥更大的价值。


    system goto layout2
    cjbhhcg 2019-04-29

     为什么人物向刚刚单击的坐标走去

    如何实现同一个Object的不同instance?
    mooncake 2019-02-14

    想做一个类似炉石的卡牌游戏,期初就想用一个Sprite来做所有卡牌,但是发现这样虽然可以达到换不同卡牌牌面图案的功能,但是在实现点击卡牌,触发卡牌里面的魔法效果的时候,或者判断卡牌有没有被点击过的时候就好像有点问题,因为C2里面生成的Instance好像都是统一改变它的变量。请问如果我游戏里面有100张卡牌,每张卡牌都有好几个不同的属性,是否要做100个不同的Sprite来实现?还是有其他比较好的实现方案?谢谢

    新人要用什么工具制作游戏
    momoda66 2018-09-24

    请问要用什么工具来制作游戏

    [制作分享]游戏中的对话框制作
    potion 2018-09-04

    我们常在游戏中见到各种各样的剧情对话,电子游戏从最早的RPG类对话框演变至今,已经产生了无数种解决方案。但总的来说,常见的对话分为两类:

    最常见的galgame对话,可以看到较大的立绘图表现人物的表情动态(甚至动画),以及标记角色的名字和对话内容。

    image.png

    或者也有一些游戏使用pop的悬浮对话窗口直接表现,对话框与角色位置匹配,同时不干扰游戏环境的演出效果(例如可以一边行走战斗,pop框还依然出现)

    image.png

    分析制作方案,有2个要素:

    1 资源

    2 配置

    由于各个游戏的需求不同所以我们先从最低需求的资源和配置来讲。

    对话框资源,我们最低限度需要有一个框体和一个对话文本框。框体用来做文本的背景,文本框显示对话内容。然后再根据游戏需求的不同添加立绘用的图片加载框,角色名文本框等。

    如果是pop类型的对话,也可能需要添加箭头资源(也可能需要区分对话和思考的箭头和泡泡)

    image.png

    配置部分则比较复杂,首先我们需要先理解对话的最基本结构。

    这部分很好理解,对话就是一句一句的文本,说完一句进入下一句,所以我们可以将对话的配置设计为一连串的对话ID,比如ID 1000代表第一句话,这句完了就说ID为1001的那句:

    image.png

    (请暂时忽略文本里奇怪的标签)

    很好,这样只要将这一串ID里的文本顺序播放,一句完毕显示下一句,最基础的对话框配置就做好了。

    接下来,我们需要添加一个标记,表示1014这句话是这段对话的最后一句,这样程序当识别到这个标记就会在这段对话结束的时候关闭对话框,例如next标记0表示这是段落的最后一句话:

    image.png

    在添加了文本后,我们也需要区分对话是谁说的。所以还需要添加名字和立绘的配置列:

    image.png

    如图

    • role标识立绘用图的名字
    • side标识立绘在对话框的左侧还是右侧,在制作的时候会自动反转立绘
    • name标识说话的角色名字,显示在对话前面

    关于文本打字效果:

    文本打字效果是对话框的常用效果,可以有效的控制阅读节奏,同时在单调的对话中有限的制造一些演出效果。

    打字效果可以控制打字速度,并且可以在每个字出现的时候产生各种效果(参考逆转裁判里的经典用法)

    基于打字效果产生的更多的细节:

    image.png

    • speed标记打字速度,0.5表示0.5秒打一个字
    • audio标记打字音效,即每个字出现时播放的音效
    • shake标记打字震屏效果,填写的数值表示震屏强度
    • auto标记文本是否自动下一句话(可以参考逆转裁判中犯人崩溃的桥段),一旦标记为auto则不需要按键也会自动进入下一句
    • size标记文本的字号


    以下是最终效果(不过听不到声音啦)

    talk_ref.gif


    更多扩展:

    • flash 闪屏
    • bg 改变背景图
    • bgm 改变背景音乐
    • posXY 改变立绘坐标使之偏移
    • effect 产生某个特定的特效


    pop类对话看起来比固定对话框要简单,不需要显示名字,没有立绘,受限于pop的尺寸文本也不可能做很多。但实际上,pop类对话比固定对话复杂很多:

    • pop框的尺寸需要和文本量匹配
    • 需要与说话的角色位置对应,甚至跟随移动
    • pop对话的时候,可能需要与角色行为产生关系(例如更换动画)
    • pop对话也许根本不会暂停游戏


    POP框体的制作

    在讲述pop的制作方法前,需要普及一下pop的资源制作方法和在UI中的使用类型。

    在UI控件中有一类名为9patch的控件。和普通的精灵图片不同,9patch可以将一个图片按井字分隔为9个格子,如下图:

    image.png

    如果是普通的精灵图片,在缩放的时候就会产生形变和模糊

    poptalkx.gif

    而9patch控件可以将保证4个角不变的情况下自由拉伸并且不会模糊,实现固定倒角的随意缩放的圆角矩形:

    poptalk.gif


    一旦基础的pop对话框资源搞定以后,后面的事情就会简单很多:


    • 当对话框弹出后将pop框体+箭头+文本创建在指定的角色上方(固定的点)
    • 与上次讲的固定框体一样使用打字的方法讲文本一个一个打出来
    • 限制文本框的宽度,超过一定宽度(或有主动的文本回车)自动换行
    • 将pop框的尺寸与文本框的尺寸匹配(当然四周需要留一些空间)
    • 控制好框体的坐标(匹配对话框箭头的位置,如果变大需要向上“长”)
    • 对话框缩放的效果(目前GIF帧率低看不出来,其实框体的变化是更有“弹性”)


    talk_pop.gif


    上图是完成的效果,因为偷懒,所以pop框采用了和固定框不一样的创建方式。每说一句话都会删掉当前框体,下句话重新创建pop框体并从最小尺寸开始。


    对话与角色匹配


    由于pop对话的方案需要让框体出现在指定的角色头上,所以需要为对话配置对应角色的字符(比如特定的名字),由程序逻辑找到那个角色并创建对话框(例如场景中有5个一样的NPC,我们只想让第二个NPC说话,这种时候就需要为他配置特殊的标记才能找到他)


    角色是否受控?游戏是否暂停?


    根据情况,可以将角色置为不受控状态,或干脆暂停游戏播放固定的对话或演绎动画剧情。但也有非剧情对话的情况(比如敌人或NPC的随机喊话),需要区分处理。


    对话镜头


    可以配置对话出现时镜头拉到说话角色的位置,用于跟踪对话主体或跨屏演出效果


    剧情段落


    除了NPC或敌人不受控制的自言自语外(程序设置的某种规律的随机说话),大部分的对话都是受剧情控制的综合演出效果,这种时候往往只依靠对话表不太够用。

    实际上当游戏中对话文本过多的时候,可能还需要再高一个层级的配置,用来更方便的管理对话的开始和结束,对话的类型方案等等。如果对话叫做talk的话,这个配置可以称之为story。


    在story中最基本的配置除了ID外便是talk的开始ID和结束ID。还可以配置这段对话是固定对话框还是pop对话框,甚至产生某些混合方案,例如控制剧情之间的衔接关系。


    演出效果的相关内容:

    • 对话
    • 动画控制
    • 镜头控制
    • 行为控制(例如移动或跳到某处)
    • 功能控制(例如某些开关自动开启)
    • 效果(特效,音乐音效)


    其实大部分我还没做,慢慢实现吧……orz

    所以先这样吧……

    [制作分享]跳跃的小技巧:贴墙跳
    potion 2018-09-04

    继续延续跳跃的话题,来说说跳跃中的小技巧。

    首先看看这两个GIF。

    jump1.gifjump2.gif

    这是一个贴墙跳上平台的实例,乍一看可能看不出区别。但实际手感却有很大的区别。

    我们可以拆解一下前后两个GIF的跳跃轨迹可以看到以下的区别:

    image.png

    可以看到,前面一个GIF在起跳后有一个向右后再向左的弧线,后者则直上直下。


    说到这里,需要科普一下平台游戏的基础知识。


    在平台游戏里,角色的左右移动,除了移动速度外还有两个重要的参数:Acceleration和Deceleration,说白了就是加速度和减速度。

    在很多希望体验敏捷快速的游戏中,这两个参数会被调到很大,其结果是一旦玩家按下移动就立刻启动到最大速度,一旦松手就完全静止。

    但也有反其道而行的游戏,比如超级马里奥系列。主角马里奥从静止到启动至最大速度会有一个过程,而松手后也会有“惯性”(在某些冰块地表上更明显)

    而大部分平台游戏则是介于两者之间,短暂的起速和短暂的骤停。


    回到前面的跳跃问题,我为什么要把条约做成弧线而不是直线呢?


    因为角色在贴墙跳跃的时候,移动速度是0。没错,即使你怼着墙跑,移动速度也是0。

    这就意味着你贴墙跳起到达平台后,左侧有了移动空间后才可以提升移动速度。

    所以,直上直下的跳跃方案,其结果是在跳跃到平台区域之前,角色的移动速度一直为0。左侧有空之后才能启动加速,这就导致贴墙跳上平台后无法立刻进入高速的移动,角色会在原地停一下。

    而我改善的方案,由于跳起后先向后移动,所以可以在到达最高点之前左侧就有了移动空间。角色就可以提前进入起速,在到达平台上的时候就可以无缝前行了。


    另一个原因


    再看看左侧完全是墙的情况:

    jump3.gif

    当左侧完全是墙的时候,按照这个技巧也会产生一个后弹弧线。

    这同时解决了另一个问题:当角色需要爬墙的时候不会立刻吸附在墙上。

    关于爬墙是怎么实现的:

    • 角色处于“跳”或“落”的状态
    • 角色左侧或右侧贴着墙
    • 满足以上条件就进入爬墙状态

    根据以上逻辑,如果我们采用直上直下的贴墙跳方案,在跳起的一瞬间角色就会进入爬墙状态,其结果是角色根本没跳起来,而是在地面高度爬了墙,并因为角色还处于地面导致立刻解除爬墙。

    [制作分享]如何实现伪物理的称重解谜
    potion 2018-09-04

    这是最近正在开发的一个解谜功能。我希望制作一个按钮,通过踩下这个按钮打开某个机关(或别的功能)。

    最初的设计非常简单,踩在上面=开机关。后来发现太简单了,加了按 ↓ 蹲下打开。

    后来,我为角色添加了拿箱子的功能,突然想到了重量作为解谜要素的点子,于是这个功能开发就正式开始了。

    1 重量计算


    首先确定主角有一个重量值,可被举起来的物件也有重量。当角色将物体举起来的时候,将该物体的重量值累加到角色身上。

    在按钮上,则需要添加一个需要多少重量的数值参数,例如我目前设置的100。

    最后,判定角色踩在按钮上:

    • 为角色脚下添加一个虚拟点,比角色的高度低2个像素
    • 判定这个虚拟点和按钮重叠
    • 判定角色的重量+所持物品的重量和按钮的重量需求关系,相减得出还差多少重量才能开门

    weight.gif

    2 按钮的高度匹配

    在这里我使用了一个小技巧:

    • 数字的插值,让重量不是直接到达相减值,而是慢慢到达
    • 为了让按钮逐步向下沉,我需要想办法让按钮的高度和当前显示的数字(缓动数字)能够匹配上。
    • 按钮的踩下高度是一个序列帧动画。计算当前重量/重量需求,可以得到一个当前重量的百分比,用这个百分百对应序列帧的帧数。这样,按钮的高度就和当前的重量匹配上了。 button1.png
    • 甚至我可以将门的打开进度,也许用这个方法可以做那种限时通过的门?

    door.gif

    3 修改方案

    紧接着我发现一个问题:只有主角踩在按钮上的时候按钮才能称重。但是物体单独放在上面的时候重量都不会改变:

    image.pngimage.pngimage.png

    以上3种情况(甚至叠着多个箱子)都会无法称重。

    解决方案:

    • 在按钮上添加变量,记录当前按钮上所有的物体+角色的重量,用于和重量需求做比较
    • 当按钮被创建的时候,为按钮创建一个虚拟碰撞体。这个碰撞体用来检测按钮上到底都放了什么,他们的重量是多少,并记录所有物体的重量总和
      •       碰撞体的宽度=按钮宽度    
      •       碰撞体的高度=按钮向上检测到屋顶(或其他阻挡物)
      •       image.pngimage.pngimage.png    
    • 接下来就是计算检测环节了:
      • 计算碰撞区域内的角色重量+手持物体重量,须满足角色并没有跳起来,处于地面(包括站在其他物体上)
      • 计算碰撞区域内的所有物体的重量,须满足物体没有在空中,处于地面(包括落在其他物体上),并且没有被玩家拿着)
      • 最后将所有物体的重量相加计算出当前按钮上所有物体的综合重量
    • 注意,这个解决方案并不完美,例如在L拐角的位置,按钮上方有半个阻挡块,或有其它新规则物体的情况。但在当前规则下应该足够使用了。所以当游戏添加新的规则时还需要注意不要与其冲突。

    万岁!完成了

    GIF.gifGIsF.gif

    又有没有用C3的?这几天微信下面的远程预览显示浏览器不支持了。
    bitca.cn 2018-06-20

    就是想确认一下,然后看看是微信端还是Construct端的问题,因为原来是一点问题都没有的。

    小白请教
    Zsda 2018-06-06

    我做了一个C2小游戏,怎么放到tomcat上,然后怎样进行交互.

    QQ群180911504还能进吗?
    continue0 2018-06-03

    顺便问下construct3 的rexrainbow 插件如何添加呢?https://github.com/rexrainbow/C3Plugins

    [实战]来做动作游戏:如何在斜45度游戏里实现跳跃高度
    potion 2018-05-07

    Image title

    本教程内的游戏为小英雄大乱斗:https://indienova.com/g/little%20fighting,美术资源版权归属为@JKLLIN

    注意:本教程只讲思路不会去详细说明如何在C2里怎么写事件。


    我们要实现什么效果?

    在C2里有2个非常常用的移动行为:

    8 direction行为用来实现8方行走,通常我们可以用来做顶视角或45度角游戏。添加8dir就可以直接实现用键盘控制实例在画面中移动。

    platform行为用来实现平台跳跃,platform的实例可以有非常简单实用的platform状态,包括jump,fall等。

    那么,如果我们需要在8dir里添加跳跃该怎么实现?


    基础概念

    首先必须对有高度的斜45度游戏有一个基础概念:游戏的坐标体系是由XY轴(坐标)和Z轴(高度)组成的。

    通过8dir行为可以直接实现对XY轴的控制,我们需要的是在这个基础上添加一个Z轴,让角色有高度。

    Image title

    拉尔夫出镜


    逻辑和表现分离

    首先我们要确定的是,为了实现这个效果,我们需要让角色的逻辑和表现分离。

    为什么要拆开?

    因为我们需要用8dir行为控制角色在地面的XY轴上移动,但当角色跳起来的时候,其实角色只是原地提高了Z轴高度,并没有改变XY的位置。

    但角色在画面中真的会位移到较高的位置,所以我们必须让这个跳起来的角色还有一个标记当前XY位置的真正逻辑位置。

    Image title

    观察角色下方的绿色方块,该方块为角色在XY轴空间中的位置


    即我们需要2个精灵,一个是真正的角色表现效果,包括角色的所有动画。另一个则是角色的逻辑位置,只需要一个简单的矩形即可。


    这里暂时命名这两个精灵为:

    role1 角色表现

    role1_logic 绿框逻辑


    接下来你只要控制role1_logic的8方行走就行了。对应的role1根据状态改变动画。

    上面的角色精灵role1使用set postion可以绑定在role1_logic上。注意这里不要使用pin,pin会把角色钉死在role1_logic上,role1就真的跳不起来了。


    Z轴的添加思路

    role1_logic添加一个litetween行为,按照以下方式进行配置:


    其中tween property设置为value,即我们要用litetween改变的是一个值。

    function选择easeOutQuad是一个减速的运动行为,跳起到最高点是一个不断减速的表现效果。

    target Mode选择Relative,即相对差值。

    target和duration填写改变值和插值时间,这两个控制跳起来的高度和速度,可以在事件里填写。


    跳跃开启

    在事件里启动litetween的value,让角色跳起来。


    第一行先为value设置初始值=0(表示是从地面开始的)

    第二行设置value目标值为40

    第三行设置时间为0.5秒

    第四行设置开始执行litetween,这里使用pingpong的运动模式,是一个往返循环的运动模式

    跳跃结束

    因为设置了pingpong的运动模式会导致角色会不停的跳不会停止。所以还需要设置当pingpong循环一个循环结束后停止litetween:


    这样,从逻辑上实现一个跳跃高度就完成了。最后你只需要把litetween.value的值和role1绑定起来就大功告成了。

    逻辑Z轴体现在跳跃高度上

    前面讲到role1需要set postion始终跟随role1_logic,这里的XY设置除了role1.x=role1_logic.x外,还需要在Y轴上添加litetween.value的值:role1.y=role1_logic.y-role1_logic.litetween.value(注意这里减value,因为跳起来是y轴减少)

    这样,就可以让角色保持XY轴不变的情况下跳起来。

    Image title

    Image title


    行为的拆分

    上面描述的情况是非常简单的同高度跳跃,即从0高度开始跳到40,再落到0。ACT游戏一般也只需要做到这个程度了。但如果你想做更复杂的,比如二段跳,那么就不能使用pingpong方法。而需要自己将角色的状态扩展为jump和fall两个状态,分别控制litetween.value的起落运动了。

    扩展内容

    实现了以上功能,基本你就可以做出包括空中攻击,升龙拳,打击浮空等更复杂的战斗效果了。



    谁懂得ajax获取后端json数据,然后添加信息传回后端的实例
    ^ _ ^ 2018-04-20

    如题,我想在游戏运行之初获取用户信息,最后在游戏结束时把得分传回后端,有大神可以给个样例吗,我知道用ajax,然而不知道从何入手哇

    用C2完成的第一作(其实是来混眼熟的)
    Lainn 2018-02-13

    教练!我想做游戏!

    教练:来来来,这里有一本《C2:从入门到入土》拿去看吧!还不行,去玩这个游戏吧!

    =====================分=====割=====线=====================

    Image title

    教你如何从0开始制作游戏

    Image title

    一步一步完善它

    Image title

    测试你的游戏

    Image title

    以上内容全部都没有!

    你只能看到这些没日没夜辛苦工作的精灵们

    Image title

    越来越多的BUG

    Image title

    还有这个世界的秘密?

    Image title

    被关在黑暗深处的究竟是?!

    Image title

    以上内容大概就是游戏的全部了(划掉)

    =================割========================

    这是一个比较简单的游戏(含有少量解谜内容) 大概就是使用C2过程中的一些(自我)吐槽吧

    10分钟以内就可以通关 集齐9个结局的话 可以在我这里领取游戏内同款桌面壁纸(并没有人想要)

    链接:http://lain.byethost7.com/NP/

    *请在电脑上打开网页(游戏中需要用到键盘)

    首次加载会比较慢 请耐心等待

    LOAD后若出现BUG请再次LOAD一下即可解决




    没有人玩的话 我。。我就哭给你看

    _(:°з」∠)_


    请问怎么在construct3里实现 全画布90°横置?
    JokerYe 2018-01-31

    目前在手机浏览器上横放,顶端会有浏览器自带的黑边,而browser的lock orientation好像无能为力……

    最终想实现的效果是在手机浏览器上能自动横屏,这样打开时,例如微信的顶端“微信”黑条就相当于出现在屏幕(横屏视角)的左端或者右端,而不会在顶端了……

    游戏中自定义进度条的制作方式
    feiyu 2018-01-25

    看了网上说的,把user loader layout 选为yes ,然后用loadingprogess表达式,还是不太明白,有人能在指导一下吗?谢谢

    localStorage在关卡中保存记录怎么做到
    ^ _ ^ 2017-12-14

    localStorage在关卡中保存记录怎么做到

    [自制]Flash+ 插件 -> 间隔定时器
    慕雪白羊 2017-11-06

    插件改进自官方插件Flash,现在可以作为间隔计时器使用,比如玩家受伤后的闪烁,连续的子弹发射行为等....

    具体使用方法和官方Flash差不多,区别在于 你可以使用 On flash 'On'time/On flash 'Off'time 条件  来决定flash一些什么其他的东西


    【下载地址】

    [点击后打开目录]Construct2教程>自制插件> [Behavior]Flash+1.0


    【插件设置 参数说明】

    1.Flash Mode

    Flash Mode 参数 为 Visible 时,On flash 'On'time/On flash 'Off'time 都不会被触发,FinishOff参数 也不起作用,完全和官方Flash 行为一致

    Flash ModeCustom 时触发 On flash 'On'time

    Flash Mode 参数为 Custom 时触发 On flash 'Off'time


    2. FinishOff

    FinishOff 参数为 ON 时,在结束flash/或者停止flash后  都会强制触发 On flash 'Off'time 来重置, 所以你打算将该行为用于发射间隔子弹,不要写在"Off" time

    FinishOff 参数为 OFF 时,在结束flash/或者停止flash后 不会强制触发 "off" time,因此如果未完成flash 可能会停在 On time /Off time 两种状态之一。


    加入 indienova

    • 建立个人/工作室档案
    • 建立开发中的游戏档案
    • 关注个人/工作室动态
    • 寻找合作伙伴共同开发
    • 寻求线上发行
    • 更多服务……
    登录/注册