下面是引用 kevin961104 于 2010-01-07 22:53 发表的 :
就是这样
:
很明显的错误是...
很多语法没有被定义,或是重复定义
所以想当然会被判定是
无效的指令
你对sma的概念可能不够深
没关系,多接触就会了解了
首先
指令没道理无中生有
要一步一步来
还有教你抓错误
compiler显示出来的错误行数通常不会是那个位置出错
除非该语法非常单纯,或是早在include已经定义好了
否则它只会告诉你哪个指令无效
而真正的原因你要一步一步往下找
我用条列式的说明给你听...
假设→指令→附加→启动→定义被启动者→达到效果
理论以下简称『
论』
1. 假设就是CVAR 等号后方的字完 (
论1)
2. cvar_XXX 就是指令化,让你可以很方便的变动数值
3. 要让指令产生作用,要在主要被启动的功能上附加说明
例如
论2括弧内的
TASK_MAKENEMESIS →主要启动的对象
cvar_warmup2 → 附加条件 4. 要怎么启动
? 依据前一步骤论2的内容 进一步定义它 →
论3 (TASK_MAKENEMESIS) 论4 (make_nemesis_task) 5. 启动的目的是甚么?
看你原先希望他呈现的效果是甚么
在最后总要下个结论
那就是
论5点点点在做的事
到目前为止只算是『一个工作程序』,只为了完成一件事,就是让nemesis在60秒后出现。
这个急不得的,一步步慢慢来
其中一个地方是这样的
你把不该改的也改到了→这里就是重复定义
从4562行的public make_zombie_task()开始到4593行这段
只有这样而已,以下...
// Make Zombie Task
public make_zombie_task()
{
// Call make a zombie with no specific mode
make_a_zombie(MODE_NONE, 0)
}
还有make_a_nemesis(mode, id)里面的东西
你整堆复制贴上的结果只会有两种可能
1. 新的取代旧的,禁止双重评价的道理
2. 招惹到更多需要被定义的名词
所以你的错误才会一大排
撷取你需要用到的就好
也就是为什么我会希望这边让你动动脑
看你想要甚么引发的效果自己决定
大致上看完,错误在
make_a_nemesis(mode, id) 除非你还有动到什么其他地方
跟你分享一些心得
像我在做理论分析研究的时候
我的习惯是只要到一个阶段就存档
在这边的话就好比完成nemesis的条件后存档
因为那跟背景音效是分别作业的
全部混在一起的话你难免会很乱
而且有新进展也不要删掉旧的
这样可以随时还原到上一个阶段
所以我的ZP主插件有23种版本
僵尸3的『人类士气攻击力+10%(包含音效、显示)』也成功在主插件改出来
根本不需要什么3rd-party plugin,何况还是简体字(鬼字) 版的死档案amxx。
会发现自己研究出来的东西既是原创、又是源码sma、更可以做得比那些理直气壮的商人还好。
讲到这题外话了,还是不由得纳闷,拜托那些人你拿雅币去外面买排骨饭给我看..
言归正传...
你说不定慢慢研究后,想出的东西还会比我多
搞不好以后换你发教学文,我来当学生。
我呢?不想再发文了。
建议你一步步慢慢来会比较得心应手
否则你忙了老半天却是错误的结果
那不是白搭了吗?