public virtual void AI(Hero HERO) { bool candamage = !GameGlobal.triggerinvinsible; //phủ định của trigger if (!iscollision) { pos += Global.RadialMovement(HERO.pos, pos, speed); } if (Global.GetDistance(HERO.pos, pos) < hitdist) { Global.soundcontrol.PLaySound("MobHit"); if (candamage) { HERO.GetHit(bossdmg); } else { HERO.GetHit(0); } HERO.pos += Global.RadialMovement(pos, HERO.pos, -HERO.speed); HERO.cursor.pos += Global.RadialMovement(pos, HERO.pos, -HERO.speed); iscollision = true; } if (Global.GetDistance(HERO.pos, pos) > hitdist * 1.05) { iscollision = false; } }
public void HeroHit(Hero HERO) { if (Global.GetDistance(pos, HERO.pos) < HERO.gravityradius) { if (0 < GameGlobal.gametimepassed && GameGlobal.gametimepassed <= 2000) { pos += Global.RadialMovement(HERO.pos, pos, 10f); } if (2000 < GameGlobal.gametimepassed && GameGlobal.gametimepassed <= 7500) { pos += Global.RadialMovement(HERO.pos, pos, 15f); } if (7500 < GameGlobal.gametimepassed) { pos += Global.RadialMovement(HERO.pos, pos, 20f); } } }
public virtual void AI(Hero HERO) { bool candamage = !GameGlobal.triggerinvinsible; //phủ định của trigger pos += Global.RadialMovement(HERO.pos, pos, speed); rot = Global.RotateTowards(pos, HERO.pos); if (Global.GetDistance(HERO.pos, pos) < HERO.hitdist) { Global.soundcontrol.PLaySound("MobHit"); iscollision = true; if (candamage) { HERO.GetHit(mobdmg); } else { HERO.GetHit(0); } } }
public void BlitzHookEffect(object BLITZHAND, object HERO, object BOSS) { BlitzHands blitzHands = (BlitzHands)BLITZHAND; Hero hero = (Hero)HERO; Blitz boss = (Blitz)BOSS; if (blitzHands.ishit && !blitzHands.done) { if (Global.GetDistance(hero.pos, boss.pos) >= boss.hitdist) { hero.pos += Global.RadialMovement(hero.pos, boss.pos, -15); hero.cursor.pos += Global.RadialMovement(hero.pos, boss.pos, -15); hero.isstunned = true; } if (Global.GetDistance(boss.pos, hero.pos) < boss.hitdist) { hero.isstunned = false; blitzHands.ishit = false; } } }
public void BodySlam(Hero HERO) { if (150 == lifecycle || 450 == lifecycle || 750 == lifecycle || 1050 == lifecycle || 1350 == lifecycle || 1650 == lifecycle) { fakeheropos = HERO.pos; } if ((150 <= lifecycle && lifecycle <= 300) || (450 <= lifecycle && lifecycle <= 600) || (750 <= lifecycle && lifecycle <= 900) || (1050 <= lifecycle && lifecycle <= 1200) || (1350 <= lifecycle && lifecycle <= 1500) || (1650 <= lifecycle && lifecycle <= 1800)) { pos += Global.RadialMovement(fakeheropos, pos, 20); bossdmg = 80; } else { bossdmg = 5; } }