中国虚拟军事网(VME)- 专注于武装突袭系列虚拟军事游戏

 找回密码
 加入VME

QQ登录

只需一步,快速开始

搜索
查看: 1811|回复: 6

[讨论] 如何做出不带防毒面具就扣血的设定?

[复制链接]
发表于 2013-8-28 23:30:52 | 显示全部楼层 |阅读模式
本帖最后由 a8325811 于 2013-8-28 23:32 编辑

之前玩过个任务,内容是有放射性物质,在任务区的中央,所以人人都要带上防毒面具,要不然会扣血,想请问这种效果要怎用出来?
发表于 2013-8-29 10:44:37 | 显示全部楼层
我这样出个主意:
设定一个辐射区域
进入这个区域的人,判定是否装备防毒面具
没有防毒面具的,每隔10秒,设定被伤害减少生命0.1,直到1。

点评

我的構想差不多就是這樣!!  发表于 2013-8-29 16:00
发表于 2013-8-29 08:55:14 | 显示全部楼层
a8325811 发表于 2013-8-29 02:09
我懂你的寫的语法,谢谢你的帮忙。

不过你说的[duqi 这是散发毒气的中心点以这个为中心]这部分,是 ...

是要这样写吗? (player distance abcd <= 200),abcd就是那个中心点?
对~就是这样写。。。大概以一个游戏逻辑或者物体作为中心点给他改个名字就行了
还可以200 + random 100 作为一个随机数,毒气可能飘得更远。。范围200~300不等

扣血语法的话、、我也刚学 只能说个大概。。基于sqs的话我倒是会
player setdamage (getdammage player) + 0.1 应该每运行一次就掉0.1血了 写进循环了估计差不多了

最后一个问题如果是我的话~我会在那个散发毒气的初始化栏填写调用脚本~一直让他循环检测。。又或者达成什么条件以后~再触发散播毒气也行~~

我也只学了两天C~~只是对sqs比较熟悉。。sqf还在研究。。。其他的不甚了解。。。JAVA听说aa3支持~

ARMA的语法跟其他语言的不算相同。。但是规则差不多。。。多看wiki吧
发表于 2013-8-29 00:29:18 | 显示全部楼层
if(({_x == "fangdumianju"} count magazines player == 0)&&(player distance  <= 200))then{
  循环掉血~神马的。。。直到死了就打断


};
"fangdumianju" 是 防毒面具在游戏中的classname 得你自己找。。duqi 这是散发毒气的中心点以这个为中心。。进去就掉血神马的。。可以写个条件让循环掉血 超出毒气作用范围就breakTo掉。。

大概就这样。。。刚学不久~~互相学习哈
 楼主| 发表于 2013-8-29 02:09:50 | 显示全部楼层
本帖最后由 a8325811 于 2013-8-29 02:17 编辑
下网上载 发表于 2013-8-29 00:29
if(({_x == "fangdumianju"} count magazines player == 0)&&(player distance


我懂你的寫的语法,谢谢你的帮忙。

不过你说的[duqi 这是散发毒气的中心点以这个为中心]这部分,是指语法中的(player distance  <= 200)这个吧。 那那个散发毒气的中心点,是要写进哪里?

是要这样写吗? (player distance abcd <= 200),abcd就是那个中心点?

还是要这样写, (200 <= player distance abcd) , 哪个对呢?

还有顺便问一句,如何撰写扣血语法? 是要这样写吗? player setdamage ++ , 这样不断往上加吗?

最后一问,我想实现这个效果,是要写进处发器? 还是要在任务文件里新增sqf,让他在init.sqf初始化阶段载入,并不断的进行检查?


抱歉我只学过初浅的C#,想说概念视不是这样写? 一起讨论一下。(是不是要学习java script,会比较好了解ArmA的语法呢?)
 楼主| 发表于 2013-8-29 09:18:39 | 显示全部楼层
感谢你~! 我实验一下,看看结果。
您需要登录后才可以回帖 登录 | 加入VME

本版积分规则

小黑屋|中国虚拟军事网

GMT+8, 2024-5-2 22:41

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表