Lineage Justice
Spells & Skills
Lookup and validate skills and spells.
|
Resurrection
|
MP:
|
50
|
HP:
|
0
|
Item:
|
None
|
Amount:
|
N/A
|
Duration:
|
0
|
Skill Type:
|
Restore
|
Delay:
|
10
|
Cast Invis:
|
Yes
|
Ignores CM:
|
Yes
|
Element:
|
None
|
Range:
|
20
|
Area:
|
N/A
|
Dmg Value:
|
0.0
|
Dmg Dice:
|
0
|
Dice Count:
|
0
|
Prob Value:
|
0
|
Prob Dice:
|
0
|
Prob Max:
|
N/A
|
L1Skill Execution:
if (_skillId == RESURRECTION
|| _skillId == GREATER_RESURRECTION) {
if (cha instanceof L1PcInstance) {
L1PcInstance pc = (L1PcInstance) cha;
if (_player.getId() != pc.getId()) {
if (L1World.getInstance().getVisiblePlayer(pc, 0)
.size() > 0) {
for (L1PcInstance visiblePc : L1World
.getInstance().getVisiblePlayer(pc, 0)) {
if (!visiblePc.isDead()) {
_player.sendPackets(new S_ServerMessage(
592));
return;
}
}
}
if (pc.getCurrentHp() == 0 && pc.isDead()) {
if (pc.getMap().isUseResurrection()) {
if (_skillId == RESURRECTION) {
pc.setGres(false);
} else if (_skillId == GREATER_RESURRECTION) {
pc.setGres(true);
}
pc.setTempID(_player.getId());
pc.sendPackets(new S_MessageYN(322, ""));
}
}
}
}
if (cha instanceof L1NpcInstance) {
if (!(cha instanceof L1TowerInstance)) {
L1NpcInstance npc = (L1NpcInstance) cha;
if (npc.getNpcTemplate().isCantResurrect()
&& !(npc instanceof L1PetInstance)) {
return;
}
if (npc instanceof L1PetInstance
&& L1World.getInstance()
.getVisiblePlayer(npc, 0).size() > 0) {
for (L1PcInstance visiblePc : L1World
.getInstance().getVisiblePlayer(npc, 0)) {
if (!visiblePc.isDead()) {
_player.sendPackets(new S_ServerMessage(
592));
return;
}
}
}
if (npc.getCurrentHp() == 0 && npc.isDead()) {
if (_skillId == GREATER_RESURRECTION) {
npc.resurrect(npc.getMaxHp());
} else {
npc.resurrect(npc.getMaxHp() / 4);
}
npc.startHpRegeneration();
npc.startMpRegeneration();
npc.setResurrect(true);
}
}
}
}