搜索
楼主: lu0007

大家看看这个插件怎么改!CARD.SMA

[复制链接]
发表于 2007-2-10 19:47:43 | 显示全部楼层 来自 中国–广东–深圳–罗湖区

回复: 大家看看这个插件怎么改!CARD.SMA

Post by lu0007
试验的两个大BUG
第一:能无限得到CARD
第二:上一回合中抽到的卡的功效在本回合中也起作用!

这两个BUG 能解决就大功告成了!呵呵 !努力研究,希望有高手指点!

new last_card[33]

//......

public cmd_card(id) {

//......

if(get_gametime() < last_card[id] ) {
client_print(id, print_chat, "You've already chosen a card recently. Please try again later.")
return PLUGIN_CONTINUE
}

last_card[id] = get_gametime() + get_pcvar_num(g_CardDelay)

new rand = random_num(1,19)
//......
}

public client_putinserver(id)
{
last_card[id] = 0 //初始化
}

注意红字为修改的
兰字的为新增

试一下,应该是玩家使用一次后,需要的 card_delay 300 秒后才能再次使用
注:没有测试
回复

使用道具 举报

 楼主| 发表于 2007-2-10 21:07:19 | 显示全部楼层 来自 中国–浙江–嘉兴

回复: 大家看看这个插件怎么改!CARD.SMA

Post by jop
注意红字为修改的
兰字的为新增

试一下,应该是玩家使用一次后,需要的 card_delay 300 秒后才能再次使用
注:没有测试

呵呵 ,谢谢!
我看了一下午的 antiflood.sma 也试了 new Float:last_card[33] = {0.0, ...} 呵呵,不过没试全,主要语法不知道,嘿嘿!
你的,我来试试!
回复

使用道具 举报

 楼主| 发表于 2007-2-10 22:18:04 | 显示全部楼层 来自 中国–浙江–嘉兴

回复: 大家看看这个插件怎么改!CARD.SMA

new last_card[33]   [color="Red"]//我改成了 new Float:last_card[33]

//......

public cmd_card(id) {

//......

if(get_gametime() < last_card[id] ) {  [color="red"]//这行编译警告,类型不匹配!
client_print(id, print_chat, "You've already chosen a card recently. Please try again later.")
return PLUGIN_CONTINUE
}

last_card[id] = get_gametime() + get_pcvar_num(g_CardDelay)

new rand = random_num(1,19)
//......
}

public client_putinserver(id)
{
last_card[id] = 0 [color="red"]//初始化  我改成了 last_card[id] = 0.0
}
我是设置每 30 秒可以输入/card 一次 这个测试成功!
第二个问题就是 上一回合的功效 本回合还存在,这个BUG还在的。
应该有 round (回合判断函数的) 不知道函数名是什么!
回复

使用道具 举报

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

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