?? zuijiu.c
字號:
// zuijiu.c 醉酒#include <ansi.h>#include <combat.h>inherit F_SSERVER;int perform(object me, object target){ int drunk, limit, i, lvl; string msg; int extra; object weapon; if( !target ) target = offensive_target(me); if( !target || !me->is_fighting(target) || !living(target)) return notify_fail("「八仙醉打」只能在戰斗中對對手使用。\n"); if (!objectp(weapon = me->query_temp("weapon")) || weapon->query("skill_type") != "club" || me->query_skill_mapped("club") != "weituo-chu") return notify_fail("你現在無法使用「八仙醉打」。\n"); if( (int)me->query_skill("weituo-chu",1) < 100 ) return notify_fail("你的醉棍不夠嫻熟,不會使用「八仙醉打」!\n"); if( me->query_skill_mapped("force") != "yijinjing" ) return notify_fail("你現在所使的內功無法使出「八仙醉打」。\n"); if( (int)me->query_skill("yijinjing",1) < 100 ) return notify_fail("你的易筋經等級不夠,不能使用「八仙醉打」!\n"); if( (int)me->query_str() < 25 ) return notify_fail("你的臂力不夠強,不能使用「八仙醉打」!\n"); if( (int)me->query("max_neili") < 1300 ) return notify_fail("你的內力太弱,不能使用「八仙醉打」!\n"); limit = (me->query("con") + (int)me->query("max_neili") / 50) * 2; lvl = (int)me->query_skill("weituo-chu", 1); lvl /= 30; lvl--; if(lvl > 8) lvl = 8; if(lvl < 1) return notify_fail("你的等級太低,無法使用出「八仙醉打」!\n"); if( (int)me->query("neili") < 100*lvl ) return notify_fail("你的內力太少了,無法使用出「八仙醉打」!\n"); message_vision(HIY"\n$N突然一個醉嗝,頓時借著酒勁猛打,醉棍威力大增!\n"NOR,me); for(i=0; i < lvl; i++){ if(!me->is_killing(target) && !target->is_killing(me) && !target->is_fighting(me)) break; me->add_temp("apply/attack", extra); me->add_temp("apply/damage", extra); msg = HIR "$N突然一個醉嗝,不知從何處打出第"+(i+1)+"棍!\n" NOR; COMBAT_D->do_attack(me,target, me->query_temp("weapon"),TYPE_REGULAR,msg); me->add_temp("apply/attack", -extra); me->add_temp("apply/damage", -extra); } me->add("neili", -400); me->add("jing", 20); me->start_busy(3); return 1;}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -