ssRender 引擎游戏项目(完结)

概述:

本篇文章作为,本次游戏项目的完结篇,优化了人物不同状态下进入关卡4的逻辑,人物形象逻辑、英雄和怪物攻击逻辑,新增:英雄头衔,攻击连击,完结、生命值归0界面,重新开始游戏和返回主界面功能;增加事件:PropertyChanged。

效果:

1.BOSS关卡场景效果

在这里插入图片描述

2.英雄攻击方向不是怪物时,怪物直接攻击英雄。

在这里插入图片描述

  1. 游戏失败,选择返回主界面场景

在这里插入图片描述

4.游戏失败,选择重新加载游戏场景

在这里插入图片描述

更新内容

1. 新增节点

节点名称Preview窗口对应情况
Game_Over黑色背景图
Falied文字:游戏失败
B_RRstart不显示:用于控制切换回场景1
Restart文字:重新开始
Return_Main文字:返回主界面
B_Main不显示:用于控制返回游戏开始场景
Game_End不显示,用于存放子节点,控制总体的显示与隐藏
Over_BG黑色背景图
End文字:完结
Restore_Op不显示,用于控制所有Opacity=1
BX关卡4:宝箱图片
Hero_AtText不显示,用于控制子节点位置
Text0文字:连击/头衔……
Text1连击的数字
节点名称节点数量
Layer1
Item4
Text5
Button3

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

2. 绑定和事件

首先对Monster_Move_1节点表达式进行优化,删除多余表达式,用于设置当前节点Visible属性。

在这里插入图片描述

设置场景4的原有Monster_Move_2、3、4、5新增自定义属性LP2,用于控制如果英雄的攻击的方向不是怪物,则怪物不掉血。只有和英雄位置相同时会使英雄掉血。

在这里插入图片描述

var hx = {$../../Hero/ShowX}
var hy = {$../../Hero/ShowY}
var y = {$./Y}
var L = {$../../HeroMassage/Leverl}
var Num = {$../../Hero/Num}
var sumy
sumy = hy - {$./Y}

(hy >= y && Num == 3 && sumy < 64 && L == 4 && {$./Visible} == 1):1
(hy >= y && Num == 4 && sumy < 64 && L == 4 && {$./Visible} == 1):1

在这里插入图片描述

修改Monster_BOSS节点的LP自定义属性表达式,让它进行判断当人物移动到特定位置时开始计数(连击数),并且当英雄处于关卡4的时候计数不消失,离开关卡4连击数量消失。

在这里插入图片描述

var hx = {$../../Hero/ShowX}
var hy = {$../../Hero/ShowY}
var L = {$../../HeroMassage/Leverl}
var hnum = {$../../Hero/Num}
var v = {$./Opacity}
(hx == 128 && hy == 96 && L == 4 && hnum == 1 && v > 0):{$./LP}={$./LP}+0.1
var sum = {$./LP}
(hx != 128 || hy != 96 || hnum != 1 || v <= 0):sum

增加PropertyChanged事件,当Opacity属性发生变化时,判断正确后让宝箱显示。

在这里插入图片描述

BX节点新增自定义属性LP,用于计数,用于控制跳转到完结的界面,通过计数的方式来实现延时跳转的功能。

在这里插入图片描述

设置BX节点的PropertyChanged事件,当LP发生改变时判断条件正确时,显示完结界面,实现跳转的功能。

在这里插入图片描述

设置Hero_Text节点的X、Y属性绑定,绑定在Hero节点的X、Y属性。

在这里插入图片描述
在这里插入图片描述

继续设置当前节点的Visible属性,当攻击特效触发时,当前节点才会显示

在这里插入图片描述

设置上一个节点的子节点Text0,增加自定义属性LP,用于控制当前节点位置,Text属性显示状态。

在这里插入图片描述

根据LP属性判断自身变化

在这里插入图片描述
在这里插入图片描述

设置Text1属性的自定义属性LP,与Text0同理

在这里插入图片描述

Text属性这里设置不同于Text0,绑定到BOSS的LP属性

在这里插入图片描述

Visible属性同理Text0的Visible属性设置

在这里插入图片描述

设置B_Rastart的Clicked事件,实线重新开始游戏功能,跳转到场景1,并重置英雄的生命值、要是、关卡值;

在这里插入图片描述

设置B_Main节点的Clicked事件,同理B_Rastart节点设置,只不过把关卡值设置为0(游戏开始界面)

在这里插入图片描述

设置Restore_Op节点的Clicked事件,把节点的Opacity属性设置为1。

在这里插入图片描述

小结:

本次游戏项目截止到这已经全部更新完成了,收获颇多不仅仅对于表达式的理解,还有一些设计思路:逻辑的设计、工程节点应该怎么样设置、资源的设置,工程的前期准备工作如何做……
因为本次工程用了大量的表达式,所以对于表达式的理解又有了不同的认知
下一篇文章更新:数据类Plugin方向

游戏项目链接:

ssRender 引擎游戏项目【5】

ssRender 引擎游戏项目【4】

ssRender 引擎游戏项目【3】

ssRender 引擎游戏项目【2】

ssRender 引擎游戏项目【1】

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值