Support for Resurrection effects with HP MP CP percent parameters.
This commit is contained in:
		| @@ -33,10 +33,16 @@ import org.l2jmobius.gameserver.taskmanager.DecayTaskManager; | ||||
| public class Resurrection extends AbstractEffect | ||||
| { | ||||
| 	private final int _power; | ||||
| 	private final int _hpPercent; | ||||
| 	private final int _mpPercent; | ||||
| 	private final int _cpPercent; | ||||
| 	 | ||||
| 	public Resurrection(StatSet params) | ||||
| 	{ | ||||
| 		_power = params.getInt("power", 0); | ||||
| 		_hpPercent = params.getInt("hpPercent", 0); | ||||
| 		_mpPercent = params.getInt("mpPercent", 0); | ||||
| 		_cpPercent = params.getInt("cpPercent", 0); | ||||
| 	} | ||||
| 	 | ||||
| 	@Override | ||||
| @@ -59,7 +65,7 @@ public class Resurrection extends AbstractEffect | ||||
| 			final PlayerInstance player = effected.getActingPlayer(); | ||||
| 			if (!player.isResurrectionBlocked() && !player.isReviveRequested()) | ||||
| 			{ | ||||
| 				effected.getActingPlayer().reviveRequest(effector.getActingPlayer(), effected.isPet(), _power); | ||||
| 				effected.getActingPlayer().reviveRequest(effector.getActingPlayer(), effected.isPet(), _power, _hpPercent, _mpPercent, _cpPercent); | ||||
| 			} | ||||
| 		} | ||||
| 		else | ||||
|   | ||||
| @@ -37,11 +37,17 @@ import org.l2jmobius.gameserver.model.skills.Skill; | ||||
| public class ResurrectionSpecial extends AbstractEffect | ||||
| { | ||||
| 	private final int _power; | ||||
| 	private final int _hpPercent; | ||||
| 	private final int _mpPercent; | ||||
| 	private final int _cpPercent; | ||||
| 	private final Set<Integer> _instanceId; | ||||
| 	 | ||||
| 	public ResurrectionSpecial(StatSet params) | ||||
| 	{ | ||||
| 		_power = params.getInt("power", 0); | ||||
| 		_hpPercent = params.getInt("hpPercent", 0); | ||||
| 		_mpPercent = params.getInt("mpPercent", 0); | ||||
| 		_cpPercent = params.getInt("cpPercent", 0); | ||||
| 		 | ||||
| 		final String instanceIds = params.getString("instanceId", null); | ||||
| 		if ((instanceIds != null) && !instanceIds.isEmpty()) | ||||
| @@ -87,12 +93,12 @@ public class ResurrectionSpecial extends AbstractEffect | ||||
| 		 | ||||
| 		if (effected.isPlayer()) | ||||
| 		{ | ||||
| 			effected.getActingPlayer().reviveRequest(caster, false, _power); | ||||
| 			effected.getActingPlayer().reviveRequest(caster, false, _power, _hpPercent, _mpPercent, _cpPercent); | ||||
| 		} | ||||
| 		else if (effected.isPet()) | ||||
| 		{ | ||||
| 			final PetInstance pet = (PetInstance) effected; | ||||
| 			effected.getActingPlayer().reviveRequest(pet.getActingPlayer(), true, _power); | ||||
| 			effected.getActingPlayer().reviveRequest(pet.getActingPlayer(), true, _power, _hpPercent, _mpPercent, _cpPercent); | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
| @@ -1069,6 +1069,9 @@ | ||||
| 		<effects> | ||||
| 			<effect name="ResurrectionSpecial"> | ||||
| 				<power>100</power> | ||||
| 				<hpPercent>100</hpPercent> | ||||
| 				<mpPercent>100</mpPercent> | ||||
| 				<cpPercent>100</cpPercent> | ||||
| 			</effect> | ||||
| 		</effects> | ||||
| 	</skill> | ||||
|   | ||||
| @@ -1112,6 +1112,8 @@ | ||||
| 															<xs:element name="pAccuracyAmount" type="xs:decimal" /> | ||||
| 															<xs:element name="pAccuracyMode" type="xs:string" /> | ||||
| 															<xs:element name="hpPercent" type="xs:unsignedByte" /> | ||||
| 															<xs:element name="mpPercent" type="xs:unsignedByte" /> | ||||
| 															<xs:element name="cpPercent" type="xs:unsignedByte" /> | ||||
| 															<xs:element name="attribute" type="xs:string" /> | ||||
| 															<xs:element name="attackerType" type="xs:string" /> | ||||
| 															<xs:element name="minAttackerLevel" type="xs:unsignedByte" /> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 MobiusDevelopment
					MobiusDevelopment