GKFXCode / SimpleTowerDefense

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

github使用

1.登录/注册github.com,fork这个项目:https://github.com/GKFXCode/SimpleTowerDefense

2.将fork后的项目clone到本地

git clone [项目地址]

3.在github.com网站上生成Token 点击github右上角头像,点击settings,然后点击左侧导航栏最下方的Developer Settings,然后点击Personal Access Tokens,然后点击Generate new token,选择仓库的读写权限后点击Generate。 参考:https://blog.csdn.net/chengwenyang/article/details/120060010

4.git remote remove origin 删除现在的远程分支,然后利用Token创建新的远程分支 git remote add origin https://[TOKEN]@github.com/[username]/[repo_name]

5.编写代码并测试

6.将代码同步到fork得到的github仓库中

git add [文件]
git commit -m '简洁地描述修改了哪些内容'
# 如果修改内容较多,可以按修改的内容分多次add和commit
git push origin master

7.在fork的项目网页上方发起PR,将代码同步到原项目仓库https://github.com/GKFXCode/SimpleTowerDefense

SimpleTowerDefence

本项目基于https://youtu.be/wFdpCGbrVXI?si=X3R6MtIzSUmiK2ul修改。原作者制作了一部分教程后弃坑了 : ( 。

游戏的主场景是Game.tscnGameScene.tscn控制关卡的切换,敌人生成等游戏逻辑。 Map.tscn是所有地图的基类。 Enemy.tscn是所有敌人的基类。 Tower.tscn是所有防御塔的基类。 如Tower.tscn中所示,防御塔由底座(Base),炮塔(Turrent)组成,攻击范围(Range), 动画(AnimationPlayer)组成。 Tower的攻击力等数据保存在GameData.gd中,这是一个自动加载脚本,因此你可以在任何位置获取其中的数据。 制作动画和图标所需的素材保存在Assets

MissileT1

当作用范围内存在敌人时,以固定的频率进行攻击。 向距离最近的目标发射一枚追踪导弹,导弹命中任意敌人后爆炸,造成单体伤害。如果瞄准的目标死亡或消失,导弹原地爆炸。

BombT1

当作用范围内存在敌人时,以固定的频率进行攻击。 向距离最近的目标位置发射一枚炸弹,炸弹到达后立即爆炸,对爆炸范围内的所有敌人造成固定伤害。

IceT1

当作用范围内存在敌人时,以固定的频率进行攻击。 让作用范围内的所有敌人进入冰冻(frozen)状态,使其速度下降。离开作用范围一定时间后敌人速度恢复。 提示:可以用Timer计时

FlamthrowerT1

向距离最近的目标发射火焰,让对象进入点燃(ignited)状态,每秒扣除固定血量。状态持续固定时间后消失。

SummoningT1

召唤一块岩石,沿着敌人路径反向运动,对碰撞到的敌人造成固定伤害。到达起点后消失。

提示:

  • 使用Godot版本为3.5.3
  • 原有内容中只需要修改[tower_name].tscn,[tower_name].gd,enemy.gd,如果需要修改其他位置(修改bug等),需要单独提PR
  • 多人同时修改enemy.gd会造成代码合并冲突,需要手动处理。为了尽可能避免冲突,请及时git pull
  • 可以按需要自由新建场景和代码(放在对应的文件夹中)
  • 新增的动画素材按分类保存到Assets文件夹中

About


Languages

Language:GDScript 100.0%