Lineage Justice

Spells & Skills

Lookup and validate skills and spells.

Cancel
MP: 40 HP: 0 Item: 40318 Amount: 2 Duration: 0 Skill Type: Probability
Delay: 500 Cast Invis: Yes Ignores CM: Yes Element: Wind Range: 20 Area: N/A
Dmg Value: 0.0 Dmg Dice: 0 Dice Count: 0 Prob Value: 0 Prob Dice: 11 Prob Max: 80
L1Skill Execution:

if (_skillId == MASS_CANCELLATION) { 
	if (_player != null && _player.isInvisble()) {
		_player.delInvis();
	}
	if (cha instanceof L1SummonInstance
			|| cha instanceof L1PetInstance) {
		L1NpcInstance npc = (L1NpcInstance) cha;
		npc.setMoveSpeed(0);
		npc.setBraveSpeed(0);
		npc
		.broadcastPacket(new S_SkillHaste(cha.getId(),
				0, 0));
		npc
		.broadcastPacket(new S_SkillBrave(cha.getId(),
				0, 0));
		npc.setWeaponBreaked(false);
		npc.setParalyzed(false);
		npc.setParalysisTime(0);
		npc.broadcastPacket(new S_SkillSound(npc.getId(), 870));
	}

	
	for (int skillNum = SKILLS_BEGIN; skillNum <= SKILLS_END; skillNum++) {
		if (isNotCancelable(skillNum) && !cha.isDead()) {
			continue;
		}
		cha.removeSkillEffect(skillNum);
	}

	
	cha.curePoison();
	cha.cureParalaysis();
	for (int skillNum = STATUS_BEGIN; skillNum <= STATUS_END; skillNum++) {
		if (skillNum == STATUS_CHAT_PROHIBITED 
				|| skillNum == STATUS_CURSE_BARLOG 
				|| skillNum == STATUS_CURSE_YAHEE) { 
			continue;
		}
		cha.removeSkillEffect(skillNum);
	}

	if (cha instanceof L1PcInstance) {
	}

	
	for (int skillNum = COOKING_BEGIN; skillNum <= COOKING_END; skillNum++) {
		if (isNotCancelable(skillNum)) {
			continue;
		}
		cha.removeSkillEffect(skillNum);
	}

	if (cha instanceof L1PcInstance) {
		L1PcInstance pc = (L1PcInstance) cha;

		
		L1PolyMorph.undoPoly(pc);
		pc.sendPackets(new S_CharVisualUpdate(pc));
		pc.broadcastPacket(new S_CharVisualUpdate(pc));

		
		if (pc.getHasteItemEquipped() > 0) {
			pc.setMoveSpeed(0);
			pc.sendPackets(new S_SkillHaste(pc.getId(), 0, 0));
			pc.broadcastPacket(new S_SkillHaste(pc.getId(), 0,
					0));
		}
	}
	cha.removeSkillEffect(STATUS_FREEZE); 
	if (cha instanceof L1PcInstance) {
		L1PcInstance pc = (L1PcInstance) cha;
		pc.sendPackets(new S_CharVisualUpdate(pc));
		pc.broadcastPacket(new S_CharVisualUpdate(pc));
		if (pc.isPrivateShop()) {
			pc.sendPackets(new S_DoActionShop(pc.getId(),
					ActionCodes.ACTION_Shop, pc.getShopChat()));
			pc.broadcastPacket(new S_DoActionShop(pc.getId(),
					ActionCodes.ACTION_Shop, pc.getShopChat()));
		}
		if (_user instanceof L1PcInstance) {
			((L1PcInstance) _user)._pinkName.onAction(pc);
		}
	pc.sendPackets(new S_SkillSound(cha.getId(), 870));
	pc.broadcastPacket(new S_SkillSound(cha.getId(), 870));
	}
}