搜索
查看: 2683|回复: 9

有几个函数问题请教

[复制链接]
发表于 2008-3-24 09:27:24 | 显示全部楼层 |阅读模式 来自 中国–浙江–温州
set_user_armor给与玩家的是没有头盔的夹,AMXX里有发带头盔的函数吗。
cs_set_weapon_ammo此函数再1.5下没效果,不知道AMXX是否有其他函数可以再1.5下设置玩家弹药。
发表于 2008-3-24 21:22:06 | 显示全部楼层 来自 中国–甘肃–兰州

回复: 有几个函数问题请教

注意,cs_set_user_bpammo这个函数只支持CS1.6而不支持CS1.5。以AK-47为例,要想赋予其90发弹药,在CS1.6里代码可以这样写:
give_item(id, "weapon_ak47")
cs_set_user_bpammo(id,CSW_AK47,90)
而在CS1.5里代码则需要这样写:
give_item(id, "weapon_ak47");
give_item( id, "ammo_762nato");
give_item( id, "ammo_762nato");
give_item( id, "ammo_762nato");

// 写上三个give_item( id, "ammo_762nato");就行了,多写几个是无效的,仍旧还是90发弹药,因为AK-47最多只有90发弹药,而不可能出现120发或者更多。另外,这个ammo_762nato也不是一成不变的,视枪械而定,如M4就不是这个了,而是ammo_556nato
这些支持CS1.5的代码也可以用于CS1.6,但CS1.6的代码就不能支持CS1.5了。
回复 1 0

使用道具 举报

发表于 2008-3-24 11:22:15 | 显示全部楼层 来自 中国–北京–北京–海淀区

回复: 有几个函数问题请教

cs_set_user_armor ( index, armorvalue, CsArmorType:armortype )
CS_ARMOR_NONE = 0, // no armor
CS_ARMOR_KEVLAR = 1, // armor
CS_ARMOR_VESTHELM = 2 // armor and helmet

第二个问题可能有两种情况,一是你没用对,二是不支持1.5
这个函数是设置枪里的子弹,所以那个id应该是枪的id,如果你用对了那就是第二种情况了。
回复

使用道具 举报

 楼主| 发表于 2008-3-24 20:24:56 | 显示全部楼层 来自 中国–浙江–温州

回复: 有几个函数问题请教

2楼的谢谢你,我自己说错了不好意思,是cs_set_user_bpammo这个函数。
回复

使用道具 举报

 楼主| 发表于 2008-3-25 12:50:51 | 显示全部楼层 来自 中国–浙江–温州

回复: 有几个函数问题请教

Oker 这个ammo_762nato枪支代码那里查。
回复

使用道具 举报

发表于 2008-3-25 13:51:57 | 显示全部楼层 来自 中国–北京–北京–海淀区

回复: 有几个函数问题请教

回复

使用道具 举报

发表于 2008-3-25 15:16:35 | 显示全部楼层 来自 中国–北京–北京–海淀区

回复: 有几个函数问题请教

因为cstrike_amxx.dll这个模块是通过直接往内存写数据实现的,所以有些函数因为cs版本而造成了内存地址偏移量的不同,所以你从那个地址读、写数据就会产生错误,1.76d在1.5下还算凑合,顶多就是部分函数不能用,而1.80在1.5下就会出现一进游戏就挂的情况。
回复

使用道具 举报

发表于 2008-3-25 15:18:35 | 显示全部楼层 来自 中国–北京–北京–海淀区

回复: 有几个函数问题请教

如果你非要用这些函数也可以,就是找出对应的偏移量就行了,这样就可以实现比如让后背子弹大于规定数目的情况,比如让awp拥有200发子弹。
回复

使用道具 举报

发表于 2008-3-25 18:29:13 | 显示全部楼层 来自 中国–甘肃–兰州

回复: 有几个函数问题请教

CS1.5确实很难改变其枪械的最大弹药量,不过CS1.6就简单了,例如:cs_set_user_bpammo(id,CSW_AK47,90) 其实里面的数字可以任意修改:30,90,120,300...... 改成多少对应枪械的弹药量就有多少,完全可以突破90发的限制。
回复

使用道具 举报

发表于 2008-3-25 18:32:42 | 显示全部楼层 来自 中国–甘肃–兰州

回复: 有几个函数问题请教

CS1.5确实很难改变其枪械的最大弹药量,不过CS1.6就简单了,例如:cs_set_user_bpammo(id,CSW_AK47,90) 其实里面的数字可以任意修改:30,90,120,300...... 改成多少对应枪械的弹药量就有多少,完全可以突破90发的限制。
回复

使用道具 举报

游客
回复
您需要登录后才可以回帖 登录 | 注个册吧

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