franniss 发表于 2009-8-21 21:32:30

STG决死系统设计

家用STG比如东方系列中,为轻度玩家准备了一些贴心的设计。决死系统是其一。
表现方式为:机体中弹后不会立扑,在一段短暂时间内,放出炸弹还可自救。

这里是一个结构例子,只推荐给GML熟手参考。

bullet object

collision <-> player event 代码:

if 对方不显示中弹状态图片
{
对方的控制状态=2;
}
自我销毁();

player object

创建 event 代码:

决死状态=0;
控制状态=1;
显示通常状态图片;

同步 event 代码:

if 控制状态=1
{
可自由控制;
}

if 控制状态=2
{
显示中弹状态图片;
控制状态=3;
计数器=30; //决死时间
}

if 控制状态>1
{
if 按键检测(炸弹)
{
决死状态=1;
销毁所有敌弹;
控制状态=1;
计数器=1;
}
}

计数器 event 代码:

if 决死状态=1 //马上恢复
{
显示通常状态图片;
}

if 决死状态!=1
{
销毁所有敌弹;
生命-=1;
被击退或隐身形态;
计数器=30;
}

决死状态=0;

计数器 event 代码:

控制状态=1;
显示通常状态图片;

血色冰凌 发表于 2009-9-1 21:39:49

其实如果你懒得话可以把决死状态的自机设定为一个新OB……
页: [1]
查看完整版本: STG决死系统设计