Esempio n. 1
0
 public static void Proc(ref Actor sActor, ref Actor dActor, ref Map.SkillArgs args)
 {
     if (sActor.type != ActorType.PC)
     {
         SkillHandler.SetSkillFailed(ref args);
         return;
     }
     ActorEventHandlers.PC_EventHandler eh = (SagaMap.ActorEventHandlers.PC_EventHandler)sActor.e;
     args.damage     = 0;
     args.isCritical = Map.SkillArgs.AttackResult.Nodamage; //not for damage
     eh.C.OnUsePromiseStone(sActor.mapID, sActor.x, sActor.y, sActor.z);
 }
Esempio n. 2
0
        public static void Proc(ref Actor sActor, ref Actor dActor, ref Map.SkillArgs args)
        {
            byte    level;
            ActorPC pc = (ActorPC)sActor;

            level = (byte)(args.skillID - baseID + 1);
            ActorEventHandlers.PC_EventHandler eh = (ActorEventHandlers.PC_EventHandler)pc.e;
            if (!SkillHandler.CheckSkillSP(pc, args.skillID))
            {
                SkillHandler.SetSkillFailed(ref args);
                return;
            }
            SkillHandler.GainLP(pc, args.skillID, (byte)((level + 1) / 2));
            args.damage     = 0;
            args.isCritical = Map.SkillArgs.AttackResult.Nodamage;
        }