@LabelIndex 137065
@StringIndex 17568
class 0 ai_silentbasin_warrior : warrior_use_skill {
parameter:
	int	SkillStigma = 395378689;

handler:
	EventHandler SEE_CREATURE(creature,i0,i1) {
		if( gg::GetAbnormalLevel(creature,myself::Skill_GetAbnormalType(SkillStigma)) > 0 ) {
			myself.i_ai0 = 1;
			myself::AddAttackDesire(creature,1,2000);
		}
		super;
	}

	EventHandler MY_DYING(creature) {
		if( gg::Rand(1000) < 2 ) {
			myself::CreateOnePrivateEx(1018695,"ai_silentbasin_trguard_b",0,0,( gg::FloatToInt(myself.sm.x) + 100 ),gg::FloatToInt(myself.sm.y),( gg::FloatToInt(myself.sm.z) + 100 ),0,gg::FloatToInt(myself.sm.x),gg::FloatToInt(myself.sm.y),gg::FloatToInt(myself.sm.z));
			myself::CreateOnePrivateEx(1018694,"ai_silentbasin_trguard_a",0,0,( gg::FloatToInt(myself.sm.x) - 100 ),gg::FloatToInt(myself.sm.y),( gg::FloatToInt(myself.sm.z) + 100 ),0,0,0,0);
			myself::CreateOnePrivateEx(1018694,"ai_silentbasin_trguard_a",0,0,gg::FloatToInt(myself.sm.x),( gg::FloatToInt(myself.sm.y) + 100 ),( gg::FloatToInt(myself.sm.z) + 100 ),0,0,0,0);
			myself::CreateOnePrivateEx(1018694,"ai_silentbasin_trguard_a",0,0,gg::FloatToInt(myself.sm.x),( gg::FloatToInt(myself.sm.y) - 100 ),( gg::FloatToInt(myself.sm.z) + 100 ),0,0,0,0);
		}
	}

	EventHandler ATTACKED(attacker) {
		if( myself.i_ai0 == 1 ) {
			myself::UseSoulShot(20);
		}
		if( attacker.summon_type == 1 || attacker.summon_type == 2 ) {
			if( myself::DistFromMe(attacker.master) < 900 ) {
				myself::AddAttackDesire(attacker.master,1,2000);
			} else {
				gg::InstantTeleportEx(attacker,( gg::FloatToInt(attacker.master.x) + 50 ),gg::FloatToInt(attacker.master.y),gg::FloatToInt(attacker.master.z),0);
			}
			return;
		}
		super;
	}

}
