引用 | 编辑
qma
2011-08-27 15:58 |
楼主
▼ |
||||||||||||
x0
虽然 版上也有个 感染所有人类的办法 但那办法不够好 而且 他在说明感染所有人类的修改方法时 弄错了 导致无法感染最后一个人 废话不多说 开始修改 声明一下: 本方法要用到 一个插件 round_terminator.amxx 源码不发了 编译条件很烦 所以就发插件了 开始: 第一步 安装 round_terminator.amxx 第二步 重点了 (修改难度并不大 目前只测试了ZP4.3) 打开 ZP主插件 先查找 Last human or not an infection round 把这段 // Last human or not an infection round if (g_survround || g_nemround || g_swarmround || g_plagueround || fnGetHumans() == 1) return HAM_IGNORED; // human is killed 改成 复制程式 // Last human or not an infection round if (g_survround || g_nemround || g_swarmround || g_plagueround) return HAM_IGNORED; // human is killed 再查找这个 Ham Player Killed Post Forward 加在 // Ham Player Killed Post Forward public fw_PlayerKilled_Post() { // Last Zombie Check fnCheckLastZombie() } 下面 (其实不一定要加在这下面) 复制程式 public zp_user_infected_post(id, infector) { if (!fnGetHumans()) { server_cmd("terminate_round timer") } } 加在 Ham Player Killed Post Forward 这一段的下面 就基本完成了 下面是附件 必须安装的(源码还是附上吧 给你们研究研究) 还不会的话 可以加我QQ 251279503 也可以 回文提问 刚刚发现漏了一个步骤 嘿嘿 补回来了
x0
|
引用 | 编辑
a7811311622
2011-08-27 16:43 |
1楼
▲ ▼ |
嘛…那篇教学的写法我没试过…不过我的写法也是差不多…但是也没问题…
x1 |
引用 | 编辑
fouury
2011-08-28 21:08 |
3楼
▲ ▼ |
不过我那篇是写在检查是否可以感染部份.
我将剩余一个人类以及其他条件去除了....自己试可以. 我那篇真的不行感染最后人类吗??= = ---- 还有... 复制程式 把这段 // Last human or not an infection round if (g_survround || g_nemround || g_swarmround || g_plagueround || fnGetHumans() == 1) return HAM_IGNORED; // human is killed 改成 // Last human or not an infection round if (g_survround || g_nemround || g_swarmround || g_plagueround || fnGetHumans() == 1) return HAM_IGNORED; // human is killed[/pre] [/code] 你这段判断式前半部就被删除....那后面写的不就错误了= = 所以你这里是有要把整个条件删除的意思?? x0 |
引用 | 编辑
fouury
2011-08-29 22:39 |
7楼
▲ ▼ |
下面是引用 qma 于 2011-08-29 12:17 发表的 : 我昨天看到明明就是这样= =||| 复制程式 把这段 // Last human or not an infection round if (g_survround || g_nemround || g_swarmround || g_plagueround || fnGetHumans() == 1) return HAM_IGNORED; // human is killed 改成 // Last human or not an infection round if (g_survround || g_nemround || g_swarmround || g_plagueround || fnGetHumans() == 1) return HAM_IGNORED; // human is killed[/pre] [/code] 你是在之后修改的吧. --- 利用//不是可以将后面字句删除吗?? x0 |
引用 | 编辑
qma
2011-08-31 10:06 |
8楼
▲ ▼ |
下面是引用 fouury 于 2011-08-29 22:39 发表的 : 我的确是之后修改了 但是 修改前问题不大 只是格式太乱了 而且 // 是本来就有的 是写在说明上的 看清楚点在评论啊 x0 |
引用 | 编辑
fouury
2011-09-04 01:43 |
11楼
▲ ▼ |
下面是引用 qma 于 2011-08-31 10:10 发表的 : 不只有格式乱的问题喔~ 所谓//可以消除后面的整排文字 所以这段 复制程式 // Last human or not an infection round if (g_survround || g_nemround || g_swarmround || g_plagueround || fnGetHumans() == 1) return HAM_IGNORED; // human is killed 在编译时会被判断成这样...如同整段消失. 复制程式 g_plagueround || fnGetHumans() == 1) return HAM_IGNORED; // human is killed if消失...写法就错误了. 依此而无法转档. -- 看来需要看清楚再回覆的人是你吧. x0 |
引用 | 编辑
fouury
2011-09-04 22:16 |
14楼
▲ ▼ |
下面是引用 qma 于 2011-09-04 11:51 发表的 : 我哪时说你是自己添上去的?? 我从头到尾是说你之前那段写法因为前面有了//导致前面判断式的if被消除而导致无法转档..... 加上如果前面你本是这样写就不止是 "有没有换行" 的问题.... 因为你将判断式前头加在zp注解的后面...所以会被前面的//消除... if不见....判断式就无效...所以转档会错误. 所以二楼用你未修改前的写法才无法转档. (先说二楼的回覆是在你未修改前发表的= =) x0 |
引用 | 编辑
a7811311622
2011-09-24 20:20 |
22楼
▲ ▼ |
下面是引用 fouury 于 2011-09-18 18:40 发表的 : 下面是引用 qma 于 2011-09-23 16:11 发表的:呃…两位请自重… 会员qma…对方也是单纯的提醒内容有误… 但是您接下来的两篇回覆口气可一点都不友善… 下面是引用 qma 于 2011-09-10 11:08 发表的: 下面是引用 qma 于 2011-09-17 12:56 发表的: x0 |
引用 | 编辑
a7811311622
2011-09-25 11:26 |
24楼
▲ ▼ |
引用 | 编辑
a7811311622
2011-10-01 11:13 |
27楼
▲ ▼ |
下面是引用 qma 于 2011-10-01 09:08 发表的 : 下面是引用 qma 于 2011-09-25 10:05 发表的:自己都承认自己有错误…现在又反过来说自己没错误…? 自己也承认自己逼不得已说脏话…现在又反问谁口出恶言…? 而且别人说话就代表要吵架…?明明对方完全没吵架的态度? 对啦对啦…反正不顺你意的发言就都是要吵架的啦… 发教学还不爽被人纠正那干脆不要发啦… x0 |
引用 | 编辑
i-c0112
2011-10-01 11:59 |
28楼
▲ ▼ |
你什么意思啊 我哪里有错误qma你脑洞么 i-c0112 //======================= qma 你脑洞么 i-c0112 这2句话也只是换行位置有差异...不过我觉得意思差很多 x0 |