mirror of
https://github.com/2006-Scape/apollo.git
synced 2026-07-07 08:39:17 +00:00
Add support for the MagicOnPlayer and MagicOnNpc frames.
This commit is contained in:
@@ -0,0 +1,66 @@
|
|||||||
|
package org.apollo.game.message.impl;
|
||||||
|
|
||||||
|
import org.apollo.game.message.Message;
|
||||||
|
import org.apollo.game.model.entity.Entity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A {@link Message} sent by the client representing when a player uses any type of magic spell on a mob.
|
||||||
|
*
|
||||||
|
* @author Stuart
|
||||||
|
*/
|
||||||
|
public abstract class MagicOnMobMessage extends Message {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The type of the mob
|
||||||
|
*/
|
||||||
|
private final Entity.EntityType type;
|
||||||
|
/**
|
||||||
|
* The index of the mob
|
||||||
|
*/
|
||||||
|
private final int index;
|
||||||
|
/**
|
||||||
|
* The spell if used
|
||||||
|
*/
|
||||||
|
private final int spellId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a magic on mob message
|
||||||
|
*
|
||||||
|
* @param type The mob type
|
||||||
|
* @param index The mob index
|
||||||
|
* @param spellId The spell id
|
||||||
|
*/
|
||||||
|
public MagicOnMobMessage(Entity.EntityType type, int index, int spellId) {
|
||||||
|
this.type = type;
|
||||||
|
this.index = index;
|
||||||
|
this.spellId = spellId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the type of the mob the spell is being used on
|
||||||
|
*
|
||||||
|
* @return The mob type
|
||||||
|
*/
|
||||||
|
public Entity.EntityType getType() {
|
||||||
|
return type;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the index of the mob the spell is being used on
|
||||||
|
*
|
||||||
|
* @return The mob index
|
||||||
|
*/
|
||||||
|
public int getIndex() {
|
||||||
|
return index;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the spell id that is being used
|
||||||
|
*
|
||||||
|
* @return The spell id
|
||||||
|
*/
|
||||||
|
public int getSpellId() {
|
||||||
|
return spellId;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
package org.apollo.game.message.impl;
|
||||||
|
|
||||||
|
import org.apollo.game.model.entity.Entity;
|
||||||
|
import org.apollo.game.model.entity.Npc;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The magic on npc {@link org.apollo.game.message.impl.MagicOnNpcMessage}
|
||||||
|
*
|
||||||
|
* @author Stuart
|
||||||
|
*/
|
||||||
|
public final class MagicOnNpcMessage extends MagicOnMobMessage {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates the magic on npc message
|
||||||
|
*
|
||||||
|
* @param index The npc index
|
||||||
|
* @param spellId The spell id used
|
||||||
|
*/
|
||||||
|
public MagicOnNpcMessage(int index, int spellId) {
|
||||||
|
super(Entity.EntityType.NPC, index, spellId);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
package org.apollo.game.message.impl;
|
||||||
|
|
||||||
|
import org.apollo.game.model.entity.Entity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The magic on player {@link org.apollo.game.message.impl.MagicOnMobMessage
|
||||||
|
*
|
||||||
|
* @author Stuart
|
||||||
|
*/
|
||||||
|
public final class MagicOnPlayerMessage extends MagicOnMobMessage {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates the magic on player message
|
||||||
|
*
|
||||||
|
* @param index The player index
|
||||||
|
* @param spellId The spell id used
|
||||||
|
*/
|
||||||
|
public MagicOnPlayerMessage(int index, int spellId) {
|
||||||
|
super(Entity.EntityType.PLAYER, index, spellId);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
package org.apollo.net.release.r317;
|
||||||
|
|
||||||
|
import org.apollo.game.message.impl.MagicOnNpcMessage;
|
||||||
|
import org.apollo.net.codec.game.*;
|
||||||
|
import org.apollo.net.release.MessageDecoder;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A {@link org.apollo.net.release.MessageDecoder} for the {@link org.apollo.game.message.impl.MagicOnNpcMessage}
|
||||||
|
*
|
||||||
|
* @author Stuart
|
||||||
|
*/
|
||||||
|
public final class MagicOnNpcMessageDecoder extends MessageDecoder<MagicOnNpcMessage> {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public MagicOnNpcMessage decode(GamePacket packet) {
|
||||||
|
GamePacketReader reader = new GamePacketReader(packet);
|
||||||
|
|
||||||
|
int index = (int) reader.getSigned(DataType.SHORT, DataOrder.LITTLE, DataTransformation.ADD);
|
||||||
|
int spellId = (int) reader.getSigned(DataType.SHORT, DataTransformation.ADD);
|
||||||
|
|
||||||
|
return new MagicOnNpcMessage(index, spellId);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
package org.apollo.net.release.r317;
|
||||||
|
|
||||||
|
import org.apollo.game.message.impl.MagicOnPlayerMessage;
|
||||||
|
import org.apollo.net.codec.game.*;
|
||||||
|
import org.apollo.net.release.MessageDecoder;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A {@link org.apollo.net.release.MessageDecoder} for the {@link org.apollo.game.message.impl.MagicOnPlayerMessage}
|
||||||
|
*
|
||||||
|
* @author Stuart
|
||||||
|
*/
|
||||||
|
public final class MagicOnPlayerMessageDecoder extends MessageDecoder<MagicOnPlayerMessage> {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public MagicOnPlayerMessage decode(GamePacket packet) {
|
||||||
|
GamePacketReader reader = new GamePacketReader(packet);
|
||||||
|
|
||||||
|
int index = (int) reader.getSigned(DataType.SHORT, DataTransformation.ADD);
|
||||||
|
int spellId = (int) reader.getSigned(DataType.SHORT, DataOrder.LITTLE);
|
||||||
|
|
||||||
|
return new MagicOnPlayerMessage(index, spellId);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -126,6 +126,7 @@ public final class Release317 extends Release {
|
|||||||
|
|
||||||
register(53, new ItemOnItemMessageDecoder());
|
register(53, new ItemOnItemMessageDecoder());
|
||||||
register(237, new MagicOnItemMessageDecoder());
|
register(237, new MagicOnItemMessageDecoder());
|
||||||
|
register(249, new MagicOnPlayerMessageDecoder());
|
||||||
|
|
||||||
register(3, new FocusUpdateMessageDecoder());
|
register(3, new FocusUpdateMessageDecoder());
|
||||||
register(45, new FlaggedMouseEventMessageDecoder());
|
register(45, new FlaggedMouseEventMessageDecoder());
|
||||||
|
|||||||
@@ -0,0 +1,24 @@
|
|||||||
|
package org.apollo.net.release.r377;
|
||||||
|
|
||||||
|
import org.apollo.game.message.impl.MagicOnNpcMessage;
|
||||||
|
import org.apollo.net.codec.game.*;
|
||||||
|
import org.apollo.net.release.MessageDecoder;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A {@link org.apollo.net.release.MessageDecoder} for the {@link org.apollo.game.message.impl.MagicOnNpcMessage}
|
||||||
|
*
|
||||||
|
* @author Stuart
|
||||||
|
*/
|
||||||
|
public final class MagicOnNpcMessageDecoder extends MessageDecoder<MagicOnNpcMessage> {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public MagicOnNpcMessage decode(GamePacket packet) {
|
||||||
|
GamePacketReader reader = new GamePacketReader(packet);
|
||||||
|
|
||||||
|
int index = (int) reader.getSigned(DataType.SHORT, DataOrder.LITTLE, DataTransformation.ADD);
|
||||||
|
int spellId = (int) reader.getSigned(DataType.SHORT, DataTransformation.ADD);
|
||||||
|
|
||||||
|
return new MagicOnNpcMessage(index, spellId);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
package org.apollo.net.release.r377;
|
||||||
|
|
||||||
|
import org.apollo.game.message.impl.MagicOnPlayerMessage;
|
||||||
|
import org.apollo.net.codec.game.*;
|
||||||
|
import org.apollo.net.release.MessageDecoder;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A {@link org.apollo.net.release.MessageDecoder} for the {@link org.apollo.game.message.impl.MagicOnPlayerMessage}
|
||||||
|
*
|
||||||
|
* @author Stuart
|
||||||
|
*/
|
||||||
|
public final class MagicOnPlayerMessageDecoder extends MessageDecoder<MagicOnPlayerMessage> {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public MagicOnPlayerMessage decode(GamePacket packet) {
|
||||||
|
GamePacketReader reader = new GamePacketReader(packet);
|
||||||
|
|
||||||
|
int index = (int) reader.getSigned(DataType.SHORT, DataTransformation.ADD);
|
||||||
|
int spellId = (int) reader.getSigned(DataType.SHORT, DataOrder.LITTLE);
|
||||||
|
|
||||||
|
return new MagicOnPlayerMessage(index, spellId);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -126,6 +126,8 @@ public final class Release377 extends Release {
|
|||||||
|
|
||||||
register(1, new ItemOnItemMessageDecoder());
|
register(1, new ItemOnItemMessageDecoder());
|
||||||
register(36, new MagicOnItemMessageDecoder());
|
register(36, new MagicOnItemMessageDecoder());
|
||||||
|
register(31, new MagicOnPlayerMessageDecoder());
|
||||||
|
register(104, new MagicOnNpcMessageDecoder());
|
||||||
|
|
||||||
register(187, new FocusUpdateMessageDecoder());
|
register(187, new FocusUpdateMessageDecoder());
|
||||||
register(19, new MouseClickedMessageDecoder());
|
register(19, new MouseClickedMessageDecoder());
|
||||||
|
|||||||
Reference in New Issue
Block a user