就是下面这一段,不管是平招还是用pfm都从没发出过,麻烦查下
mixed hit_ob(object me, object victim, int damage_bonus, int factor)
{
object weapon;
string name;
int i,attack_time,isok;
int level, level2;
int ap, dp, mp;
level = (int) me->query_skill("kuihua-xinfa",1);
level2= (int) me->query_skill("kuihua-xinfa",1);
weapon = me->query_temp("weapon");
ap = (int)me->query("combat_exp");
dp = (int)victim->query("combat_exp");
if (me->query_skill_mapped("force") != "kuihua-xinfa")
return;
if (me->query_skill_mapped("sword") != "kuihua-dafa")
return;
if (!objectp(weapon = me->query_temp("weapon"))
|| (string)weapon->query("skill_type") != "sword")
return;
if (me->query("neili") < 500)
return;
if (!weapon) return;
if (me->query_temp("weapon"))
name = "手中" + weapon->name();
else
name = "双掌";
attack_time = (int)(me->query_skill("kuihua-dafa", 1) / 60);
if (attack_time > 6)
attack_time = 6;
if (me->is_busy()
|| random(3) == 0
|| ! living(victim)
|| damage_bonus < 120
|| me->query("neili") < 300
|| me->query_temp("action_flag") == 1
|| me->query_skill("kuihua-dafa", 1) < 200)
return 0;
// 避免在使用Pfm时讯息重复
if (!me->query_temp("action_flag") && random(ap) > dp/3 && random(2)==0)
{
if (! me->query_temp("kuihua-mogong/hit_msg"))
message_vision(HIW "\n霎时间只见$N" HIW "身子猛摆,顿时化分为无数身影," + name +
HIW "\n宛若流星般分从不同的方位同时刺向$n" HIW "!\n"
NOR, me, victim);
//me->start_busy(2);
//me->add("neili", -attack_time * 20);
me->set_temp("action_flag", 1);
for (i = 0; i < attack_time; i++)
{
if (! me->is_fighting(victim))
break;
if (random(2)==0) victim->start_busy(2);
COMBAT_D->do_attack(me, victim, weapon, 0);
}
me->delete_temp("action_flag");
}
isok=0;
if (level>=300 && (me->query_skill_mapped("force") == "tmdafa" || me->query_skill_mapped("force") == "kuihua-xinfa"))
{
isok=1;
}
if (weapon)
{
if( random(me->query_str()) > victim->query_str()/3 || isok=1){
victim->receive_wound("qi", me->query_str()+random(100));
return HIR "只听「嗤」一声,一缕血丝从"+victim->name()+"被刺的针孔处喷出!\n" NOR;
}
}
}
|