3DMGAME 3DM首页 新闻中心 前瞻 | 评测 游戏库 热门 | 最新 攻略中心 攻略 | 秘籍 下载中心 游戏 | 汉化 购买正版 论坛

注册 登录

QQ登录

只需一步,快速开始

查看: 3308|回复: 4
打印 上一主题 下一主题

[讨论] 纯Script,构思的一个流血效果,有兴趣的来看看吧

[复制链接]

57

主题

1664

帖子

2001

积分

游戏达人

Rank: 7Rank: 7Rank: 7

贡献度
258
金元
9685
积分
2001
精华
0
注册时间
2009-6-22
跳转到指定楼层
主题
发表于 2012-10-21 13:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 qjyuio 于 2012-10-21 13:39 编辑

最近在学校闲着没事想着添加一个流血效果,但是因为没有游戏不能实验,所以在这里把代码写出……是基于辐射3的代码构思的,不过新维加斯通用。
真实系的玩家应该会喜欢这个的

下面这一段Script 添加一个Global数值,总值为10000,为玩家的血液量
在玩家受到伤害之后,如果损失HP大于三十(我是高伤害党,手枪伤害40),那么

流血量=受到的伤害的二次方X0.01

比如40,流血量就是 16 每秒, 那么如果玩家不做理睬,十分钟之后血会流光。
可以用医用缚带和胶带做出五个绷带,绷带每一个每秒止血2.5,持续20秒,每一个重1WG,食物每个加2血量,持续500秒,水每一个加血量1,持续300秒。
流血量小于3的时候也会自动停止。
在流血的时候每间隔三十秒会有一个提示消息正在流血。
玩家的血量可以通过视觉效果表现,比如说血量低到一定程度会减属性,眼前出现黑点,视觉变暗,血量小于2000的时候,直接倒地不起,此时每秒血量+1,流血-1,但是如果血流不止还是会死。


scn Bleedingeffect

short runonce
float hp
float damage
float bleed
;and Global blood

Begin ongamemode
if runonce == 0
    set hp to player.getav health
    set runonce to 1
else
    set damage to hp - player.getav health
  if damage > 30
     set bleed to damage*damage*0.01
  else
  endif

     set blood to blood - bleed*getsecondspassed

if bleed <= 3
  set bleed to 0
else
  if timer == 0
    showmessage bleedingmsg
    set timer to 30
  else if timer > 0
    set timer to timer - getsecondspassed
  endif
    set hp to player.getav health
  endif
end

以上程序可以得到流血的数值以及血量
至于失血量的效果可以用Perk或者Effect的Condition达到。
以上。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|3DMGAME ( 京ICP备14006952号-1  沪公网安备 31011202006753号

GMT+8, 2026-5-23 08:48 , Processed in 0.042080 second(s), 16 queries , Memcached On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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