mirror of
https://github.com/2006-Scape/2006Scape.git
synced 2026-07-04 08:39:05 +00:00
Telekinetic grab and stuff (#508)
* tidy up * Tidy up check for space * Telekinetic base * Don't allow player to pickup statue * Tidy up item pickup * fixup, statue spawn * Update telekinetic grab * 2nd option for guardian statue * handle telegrab on statue * Allow picking up global drops with telekinetic grab * Check if player can see/reach item * Update PickupItem.java * Allow pasting into chatbox * camera stuff * fixup clipboard stuff * Update PlayerAssistant.java * Update Commands.java * Add mazes initial * Tidy up the clipboard pasting * Update mazes * Calculate new position of statue * fixup telegrab * More tidy up, remove constant running of container * more tidy up.. * Handle moving statues * remove the statue from global drops * Update MagicOnFloorItems.java * Show telekinetic interface * Make public accessable * Only show items to player that are on the same height level * Moving statues around, Spawning * Reward exp, points, law runes * Show points, mazes completed * Add comment * Add observable statue (still needs work) * Fixup where camera focuses * Load items when player changes level * Graveyard base * Add a couple more checks * Update Player.java * Update Commands.java * Make sure statue is visible when player appears at maze * [Mage training arena] Graveyard * Update MageTrainingArena.java * Update MageTrainingArena.java * Update ItemHandler.java
This commit is contained in:
@@ -35,6 +35,7 @@ import com.rs2.game.players.Player;
|
||||
import com.rs2.game.players.PlayerHandler;
|
||||
import com.rs2.net.packets.PacketType;
|
||||
import com.rs2.util.Misc;
|
||||
import com.rs2.world.Boundary;
|
||||
|
||||
/**
|
||||
* Clicking most buttons
|
||||
@@ -121,6 +122,9 @@ public class ClickingButtons implements PacketType {
|
||||
|
||||
|
||||
case 4135:
|
||||
if (System.currentTimeMillis() - player.boneDelay < 2000) {
|
||||
return;
|
||||
}
|
||||
if (player.inTrade) {
|
||||
player.getPacketSender().sendMessage(
|
||||
"You can't do this in trade!");
|
||||
@@ -133,9 +137,12 @@ public class ClickingButtons implements PacketType {
|
||||
player.getPacketSender().sendChatInterface(356);
|
||||
return;
|
||||
}
|
||||
if (Boundary.isIn(player, Boundary.MAGE_TRAINING_ARENA_GRAVEYARD)) {
|
||||
player.getMageTrainingArena().graveyard.bonesToFood(52);
|
||||
return;
|
||||
}
|
||||
if (!player.getItemAssistant().playerHasItem(526, 1)) {
|
||||
player.getPacketSender().sendMessage(
|
||||
"You don't have any bones!");
|
||||
player.getPacketSender().sendMessage("You don't have any bones!");
|
||||
return;
|
||||
}
|
||||
if (!player.getItemAssistant().playerHasItem(561, 1)
|
||||
@@ -149,22 +156,23 @@ public class ClickingButtons implements PacketType {
|
||||
player.getItemAssistant().deleteItem(561, 1);
|
||||
player.getItemAssistant().deleteItem(557, 2);
|
||||
player.getItemAssistant().deleteItem(555, 2);
|
||||
player.getPlayerAssistant().addSkillXP(40, 6);
|
||||
player.getPlayerAssistant().addSkillXP(25, 6);
|
||||
player.getPlayerAssistant().refreshSkill(GameConstants.MAGIC);
|
||||
player.startAnimation(722);
|
||||
player.gfx100(141);
|
||||
player.getPacketSender().sendShowTab(6);
|
||||
player.getPacketSender().sendSound(
|
||||
SoundList.BONES_TO_BANNAS, 100, 0);
|
||||
player.getPacketSender().sendSound(SoundList.BONES_TO_BANNAS, 100, 0);
|
||||
player.boneDelay = System.currentTimeMillis();
|
||||
do {
|
||||
player.getItemAssistant().deleteItem(526, 1);
|
||||
player.getItemAssistant().addItem(1963, 1);
|
||||
player.getItemAssistant().replaceItem(526, 1963);
|
||||
} while (player.getItemAssistant().playerHasItem(526, 1));
|
||||
}
|
||||
break;
|
||||
|
||||
case 62005:
|
||||
if (System.currentTimeMillis() - player.boneDelay < 2000) {
|
||||
return;
|
||||
}
|
||||
if (player.inTrade) {
|
||||
player.getPacketSender().sendMessage(
|
||||
"You can't do this in trade!");
|
||||
@@ -180,6 +188,10 @@ public class ClickingButtons implements PacketType {
|
||||
player.getPacketSender().sendChatInterface(356);
|
||||
return;
|
||||
}
|
||||
if (Boundary.isIn(player, Boundary.MAGE_TRAINING_ARENA_GRAVEYARD)) {
|
||||
player.getMageTrainingArena().graveyard.bonesToFood(53);
|
||||
return;
|
||||
}
|
||||
if (!player.getItemAssistant().playerHasItem(526, 1)) {
|
||||
player.getPacketSender().sendMessage("You don't have any bones!");
|
||||
return;
|
||||
@@ -197,15 +209,14 @@ public class ClickingButtons implements PacketType {
|
||||
player.getItemAssistant().deleteItem(561, 2);
|
||||
player.getItemAssistant().deleteItem(557, 4);
|
||||
player.getItemAssistant().deleteItem(555, 4);
|
||||
player.getPlayerAssistant().addSkillXP(40, 6);
|
||||
player.getPlayerAssistant().addSkillXP(35.5, 6);
|
||||
player.getPlayerAssistant().refreshSkill(GameConstants.MAGIC);
|
||||
player.startAnimation(722);
|
||||
player.gfx100(311);
|
||||
player.getPacketSender().sendShowTab(6);
|
||||
player.boneDelay = System.currentTimeMillis();
|
||||
do {
|
||||
player.getItemAssistant().deleteItem(526, 1);
|
||||
player.getItemAssistant().addItem(6883, 1);
|
||||
player.getItemAssistant().replaceItem(526, 6883);
|
||||
} while (player.getItemAssistant().playerHasItem(526, 1));
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -118,6 +118,7 @@ public class Commands implements PacketType {
|
||||
case "pos":
|
||||
case "loc":
|
||||
player.getPacketSender().sendMessage("Your coords are [" + player.absX + ", " + player.absY + ", " + player.heightLevel + "]");
|
||||
player.getPacketSender().sendMessage("local coord are [" + player.getLocalX() + ", " + player.getLocalY() + "]");
|
||||
break;
|
||||
case "energy":
|
||||
player.getPacketSender().sendMessage(String.format("Run energy: %d", (int) player.playerEnergy));
|
||||
@@ -685,16 +686,16 @@ public class Commands implements PacketType {
|
||||
player.getPlayerAssistant().movePlayer(Integer.parseInt(arguments[0]), Integer.parseInt(arguments[1]), Integer.parseInt(arguments[2]));
|
||||
break;
|
||||
case "up":
|
||||
player.getPacketSender().sendMessage("You are now on height level " + (player.heightLevel + 1) + ".");
|
||||
player.getPlayerAssistant().movePlayer(player.absX, player.absY, player.heightLevel + 1);
|
||||
player.getPacketSender().sendMessage("You are now on height level " + player.heightLevel + ".");
|
||||
break;
|
||||
case "up2":
|
||||
player.getPlayerAssistant().movePlayer(player.absX, player.absY - 6400, player.heightLevel);
|
||||
player.getPacketSender().sendMessage("You are now on height level " + player.heightLevel + ".");
|
||||
break;
|
||||
case "down":
|
||||
player.getPacketSender().sendMessage("You are now on height level " + (player.heightLevel - 1) + ".");
|
||||
player.getPlayerAssistant().movePlayer(player.absX, player.absY, player.heightLevel - 1);
|
||||
player.getPacketSender().sendMessage("You are now on height level " + player.heightLevel + ".");
|
||||
break;
|
||||
case "down2":
|
||||
player.getPlayerAssistant().movePlayer(player.absX, player.absY + 6400, player.heightLevel);
|
||||
@@ -795,12 +796,24 @@ public class Commands implements PacketType {
|
||||
player.getPacketSender().sendMessage("Sound could not be sent.");
|
||||
}
|
||||
break;
|
||||
case "ccs":
|
||||
case "cameracutscene":
|
||||
player.getPlayerAssistant().sendCameraCutscene(player.getX(), player.getY(), 10, 10, 10); //Test numbers
|
||||
if (arguments.length < 5) {
|
||||
return;
|
||||
}
|
||||
player.getPlayerAssistant().sendCameraCutscene(Integer.parseInt(arguments[0]), Integer.parseInt(arguments[1]), Integer.parseInt(arguments[2]), Integer.parseInt(arguments[3]), Integer.parseInt(arguments[4])); //Test numbers
|
||||
break;
|
||||
case "ccs2":
|
||||
case "cameracutscene2":
|
||||
if (arguments.length < 5) {
|
||||
return;
|
||||
}
|
||||
player.getPlayerAssistant().sendCameraCutscene2(Integer.parseInt(arguments[0]), Integer.parseInt(arguments[1]), Integer.parseInt(arguments[2]), Integer.parseInt(arguments[3]), Integer.parseInt(arguments[4])); //Test numbers
|
||||
break;
|
||||
case "camerashake":
|
||||
player.getPlayerAssistant().sendCameraShake(1, 9, 1, 9); //these are just test numbers
|
||||
break;
|
||||
case "cr":
|
||||
case "camerareset":
|
||||
player.getPlayerAssistant().sendCameraReset(); //Resets the camera to the normal player view
|
||||
break;
|
||||
|
||||
@@ -13,6 +13,11 @@ public class ItemClick2OnGroundItem implements PacketType {
|
||||
final int itemY = player.getInStream().readSignedWordBigEndianA();
|
||||
final int itemId = player.getInStream().readUnsignedWordA();
|
||||
System.out.println("ItemClick2OnGroundItem - " + player.playerName + " - " + itemId + " - " + itemX + " - " + itemY);
|
||||
// Reset position for the telekinetic guardian statue
|
||||
if (itemId == 6888) {
|
||||
player.getMageTrainingArena().telekinetic.resetStatue(itemX, itemY);
|
||||
return;
|
||||
}
|
||||
if (player.absX != itemX || player.absY != itemY) {
|
||||
player.getPacketSender().sendMessage("You can't do that there!");
|
||||
return;
|
||||
|
||||
@@ -6,9 +6,10 @@ import com.rs2.event.CycleEvent;
|
||||
import com.rs2.event.CycleEventContainer;
|
||||
import com.rs2.event.CycleEventHandler;
|
||||
import com.rs2.game.content.combat.magic.MagicData;
|
||||
import com.rs2.game.items.ItemData;
|
||||
import com.rs2.game.players.Player;
|
||||
import com.rs2.net.packets.PacketType;
|
||||
import com.rs2.world.GlobalDropsHandler;
|
||||
import com.rs2.world.clip.PathFinder;
|
||||
|
||||
/**
|
||||
* Magic on floor items
|
||||
@@ -22,95 +23,74 @@ public class MagicOnFloorItems implements PacketType {
|
||||
int itemId = player.getInStream().readUnsignedWord();
|
||||
final int itemX = player.getInStream().readSignedWordBigEndian();
|
||||
player.getInStream().readUnsignedWordA();
|
||||
player.stopMovement();
|
||||
|
||||
if (!GameEngine.itemHandler.itemExists(itemId, itemX, itemY)) {
|
||||
player.stopMovement();
|
||||
player.getPacketSender().sendMessage("This item no longer exist.");
|
||||
return;
|
||||
}
|
||||
player.usingMagic = true;
|
||||
if (System.currentTimeMillis() - player.teleGrabDelay <= 1550) {
|
||||
return;
|
||||
}
|
||||
if (player.getItemAssistant().freeSlots(itemId, 1) <= 0) {
|
||||
player.getPacketSender().sendMessage("You don't have enough space in your inventory.");
|
||||
return;
|
||||
}
|
||||
if (!player.goodDistance(player.getX(), player.getY(), itemX, itemY, 12)) {
|
||||
return;
|
||||
}
|
||||
if (!PathFinder.isProjectilePathClear(player.getX(), player.getY(), player.heightLevel, itemX, itemY)) {
|
||||
player.getPacketSender().sendMessage("You can't see this item.");
|
||||
return;
|
||||
}
|
||||
|
||||
player.endCurrentTask();
|
||||
player.usingMagic = true;
|
||||
if (!player.getCombatAssistant().checkMagicReqs(51)) {
|
||||
player.stopMovement();
|
||||
return;
|
||||
}
|
||||
|
||||
if ((player.getItemAssistant().freeSlots() >= 1 || player.getItemAssistant()
|
||||
.playerHasItem(itemId, 1))
|
||||
&& ItemData.itemStackable[itemId]
|
||||
|| player.getItemAssistant().freeSlots() > 0
|
||||
&& !ItemData.itemStackable[itemId]) {
|
||||
if (player.goodDistance(player.getX(), player.getY(), itemX, itemY, 12)) {
|
||||
player.walkingToItem = true;
|
||||
int offY = (player.getX() - itemX) * -1;
|
||||
int offX = (player.getY() - itemY) * -1;
|
||||
player.teleGrabX = itemX;
|
||||
player.teleGrabY = itemY;
|
||||
player.teleGrabItem = itemId;
|
||||
player.turnPlayerTo(itemX, itemY);
|
||||
player.teleGrabDelay = System.currentTimeMillis();
|
||||
player.startAnimation(MagicData.MAGIC_SPELLS[51][2]);
|
||||
player.gfx100(MagicData.MAGIC_SPELLS[51][3]);
|
||||
player.getPlayerAssistant().createPlayersStillGfx(144, itemX, itemY,
|
||||
0, 72);
|
||||
player.getPlayerAssistant().createPlayersProjectile(player.getX(),
|
||||
player.getY(), offX, offY, 50, 70,
|
||||
MagicData.MAGIC_SPELLS[51][4], 50, 10, 0, 50);
|
||||
player.getPlayerAssistant().addSkillXP(
|
||||
MagicData.MAGIC_SPELLS[51][7], 6);
|
||||
player.getPlayerAssistant().refreshSkill(GameConstants.MAGIC);
|
||||
player.stopMovement();
|
||||
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
|
||||
@Override
|
||||
public void execute(CycleEventContainer container) {
|
||||
if (!player.walkingToItem) {
|
||||
stop();
|
||||
}
|
||||
if (System.currentTimeMillis() - player.teleGrabDelay > 1550
|
||||
&& player.usingMagic) {
|
||||
if (GameEngine.itemHandler.itemExists(player.teleGrabItem,
|
||||
player.teleGrabX, player.teleGrabY)
|
||||
&& player.goodDistance(player.getX(), player.getY(),
|
||||
itemX, itemY, 12)) {
|
||||
GameEngine.itemHandler.removeGroundItem(player,
|
||||
player.teleGrabItem, player.teleGrabX,
|
||||
player.teleGrabY, true);
|
||||
player.usingMagic = false;
|
||||
container.stop();
|
||||
}
|
||||
}
|
||||
if (itemId == 6888 && player.goodDistance(player.getX(), player.getY(), itemX, itemY, 20)) {
|
||||
player.getMageTrainingArena().telekinetic.moveStatue(itemX, itemY);
|
||||
return;
|
||||
}
|
||||
|
||||
player.walkingToItem = true;
|
||||
int offY = (player.getX() - itemX) * -1;
|
||||
int offX = (player.getY() - itemY) * -1;
|
||||
player.teleGrabX = itemX;
|
||||
player.teleGrabY = itemY;
|
||||
player.teleGrabItem = itemId;
|
||||
player.turnPlayerTo(itemX, itemY);
|
||||
player.teleGrabDelay = System.currentTimeMillis();
|
||||
player.startAnimation(MagicData.MAGIC_SPELLS[51][2]);
|
||||
player.gfx100(MagicData.MAGIC_SPELLS[51][3]);
|
||||
player.getPlayerAssistant().createPlayersStillGfx(144, itemX, itemY, 0, 72);
|
||||
player.getPlayerAssistant().createPlayersProjectile(player.getX(),
|
||||
player.getY(), offX, offY, 50, 70,
|
||||
MagicData.MAGIC_SPELLS[51][4], 50, 10, 0, 50);
|
||||
player.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[51][7], 6);
|
||||
player.getPlayerAssistant().refreshSkill(GameConstants.MAGIC);
|
||||
player.stopMovement();
|
||||
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
|
||||
@Override
|
||||
public void execute(CycleEventContainer container) {
|
||||
if (!player.walkingToItem) {
|
||||
container.stop();
|
||||
} else if (System.currentTimeMillis() - player.teleGrabDelay > 1550) {
|
||||
if (GameEngine.itemHandler.itemExists(player.teleGrabItem, player.teleGrabX, player.teleGrabY)) {
|
||||
GameEngine.itemHandler.removeGroundItem(player, player.teleGrabItem, player.teleGrabX, player.teleGrabY, true);
|
||||
GlobalDropsHandler.pickup(player, player.teleGrabItem, player.teleGrabX, player.teleGrabY);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void stop() {
|
||||
player.walkingToItem = false;
|
||||
}
|
||||
}, 1);
|
||||
stop();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
player.getPacketSender().sendMessage(
|
||||
"You don't have enough space in your inventory.");
|
||||
player.stopMovement();
|
||||
}
|
||||
|
||||
if (player.goodDistance(player.getX(), player.getY(), itemX, itemY, 12)) {
|
||||
int offY = (player.getX() - itemX) * -1;
|
||||
int offX = (player.getY() - itemY) * -1;
|
||||
player.teleGrabX = itemX;
|
||||
player.teleGrabY = itemY;
|
||||
player.teleGrabItem = itemId;
|
||||
player.turnPlayerTo(itemX, itemY);
|
||||
player.teleGrabDelay = System.currentTimeMillis();
|
||||
player.startAnimation(MagicData.MAGIC_SPELLS[51][2]);
|
||||
player.gfx100(MagicData.MAGIC_SPELLS[51][3]);
|
||||
player.getPlayerAssistant().createPlayersStillGfx(144, itemX, itemY, 0,
|
||||
72);
|
||||
player.getPlayerAssistant().createPlayersProjectile(player.getX(), player.getY(),
|
||||
offX, offY, 50, 70, MagicData.MAGIC_SPELLS[51][4], 50, 10,
|
||||
0, 50);
|
||||
player.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[51][7], 6);
|
||||
player.getPlayerAssistant().refreshSkill(GameConstants.MAGIC);
|
||||
player.stopMovement();
|
||||
}
|
||||
@Override
|
||||
public void stop() {
|
||||
player.usingMagic = false;
|
||||
player.walkingToItem = false;
|
||||
}
|
||||
}, 1);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -13,7 +13,9 @@ import com.rs2.game.items.impl.RareProtection;
|
||||
import com.rs2.game.players.Player;
|
||||
import com.rs2.net.packets.PacketType;
|
||||
import com.rs2.util.GameLogger;
|
||||
import com.rs2.world.Boundary;
|
||||
import com.rs2.world.GlobalDropsHandler;
|
||||
import com.rs2.world.clip.PathFinder;
|
||||
|
||||
/**
|
||||
* Pickup Item
|
||||
@@ -26,13 +28,19 @@ public class PickupItem implements PacketType {
|
||||
player.pItemY = player.getInStream().readSignedWordBigEndian();
|
||||
player.pItemId = player.getInStream().readUnsignedWord();
|
||||
player.pItemX = player.getInStream().readSignedWordBigEndian();
|
||||
if (player.getItemAssistant().freeSlots() < 1)
|
||||
{
|
||||
if (!(player.getItemAssistant().playerHasItem(player.pItemId) && player.getItemAssistant().isStackable(player.pItemId)))
|
||||
{
|
||||
player.getPacketSender().sendMessage("Not enough space in your inventory.");
|
||||
return;
|
||||
}
|
||||
// Cannot pickup the telekinetic guardian statue, should show overview of current maze
|
||||
if (player.pItemId == 6888) {
|
||||
player.getMageTrainingArena().telekinetic.observeStatue(player.pItemX, player.pItemY);
|
||||
return;
|
||||
}
|
||||
// Disabled for now, doesn't detect open doors etc
|
||||
// if (!PathFinder.getPathFinder().accessible(player.getX(), player.getY(), player.heightLevel, player.pItemX, player.pItemY)) {
|
||||
// player.getPacketSender().sendMessage("You can't reach this item.");
|
||||
// return;
|
||||
// }
|
||||
if (player.getItemAssistant().freeSlots(player.pItemId, 1) <= 0) {
|
||||
player.getPacketSender().sendMessage("Not enough space in your inventory.");
|
||||
return;
|
||||
}
|
||||
if (Math.abs(player.getX() - player.pItemX) > 25 || Math.abs(player.getY() - player.pItemY) > 25) {
|
||||
player.resetWalkingQueue();
|
||||
@@ -53,7 +61,8 @@ public class PickupItem implements PacketType {
|
||||
if (!RareProtection.removeItemOtherActions(player, player.pItemId)) {
|
||||
return;
|
||||
}
|
||||
if (player.pItemY > 9817 && player.pItemY < 9825 && player.pItemX > 3186 && player.pItemX < 3197 || player.pItemX > 3107 && player.pItemX < 3113 && player.pItemY > 3155 && player.pItemY < 3159 && player.heightLevel == 2) {
|
||||
if (Boundary.isIn(player.pItemX, player.pItemY, player.heightLevel, Boundary.VARROCK_BANK_BASEMENT)
|
||||
|| Boundary.isIn(player.pItemX, player.pItemY, player.heightLevel, Boundary.MAGE_TOWER_CAGE)) {
|
||||
player.getPacketSender().sendMessage("You can't pick up these items!");
|
||||
return;
|
||||
}
|
||||
@@ -71,35 +80,30 @@ public class PickupItem implements PacketType {
|
||||
}
|
||||
SkillHandler.resetSkills(player);
|
||||
player.getCombatAssistant().resetPlayerAttack();
|
||||
player.walkingToItem = true;
|
||||
player.soundDone = false;
|
||||
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
|
||||
@Override
|
||||
public void execute(CycleEventContainer container) {
|
||||
if (!player.walkingToItem) {
|
||||
container.stop();
|
||||
}
|
||||
if ((player.getX() == player.pItemX && player.getY() == player.pItemY
|
||||
|| player.getX() - 1 == player.pItemX && player.getY() == player.pItemY
|
||||
|| player.getY() - 1 == player.pItemY && player.getX() == player.pItemX
|
||||
|| player.getX() + 1 == player.pItemX && player.getY() == player.pItemY
|
||||
|| player.getY() + 1 == player.pItemY && player.getX() == player.pItemX
|
||||
||player.getX() == player.pItemX && player.getY() == player.pItemY) && player.walkingToItem) {
|
||||
container.stop();
|
||||
}
|
||||
player.walkingToItem = true;
|
||||
player.soundDone = false;
|
||||
CycleEventHandler.getSingleton().addEvent(player, new CycleEvent() {
|
||||
@Override
|
||||
public void execute(CycleEventContainer container) {
|
||||
if (!player.walkingToItem) {
|
||||
container.stop();
|
||||
}
|
||||
if (player.goodDistance(player.getX(), player.getY(), player.pItemX, player.pItemY, 1) && player.walkingToItem) {
|
||||
container.stop();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void stop() {
|
||||
player.walkingToItem = false;
|
||||
GameEngine.itemHandler.removeGroundItem(player, player.pItemId, player.pItemX, player.pItemY, true);
|
||||
GlobalDropsHandler.pickup(player, player.pItemId, player.pItemX, player.pItemY);
|
||||
if (!player.soundDone)
|
||||
{
|
||||
player.soundDone = true;
|
||||
player.getPacketSender().sendSound(SoundList.ITEM_PICKUP, 100, 0);
|
||||
}
|
||||
}
|
||||
}, 1);
|
||||
@Override
|
||||
public void stop() {
|
||||
player.walkingToItem = false;
|
||||
GameEngine.itemHandler.removeGroundItem(player, player.pItemId, player.pItemX, player.pItemY, true);
|
||||
GlobalDropsHandler.pickup(player, player.pItemId, player.pItemX, player.pItemY);
|
||||
if (!player.soundDone)
|
||||
{
|
||||
player.soundDone = true;
|
||||
player.getPacketSender().sendSound(SoundList.ITEM_PICKUP, 100, 0);
|
||||
}
|
||||
}
|
||||
}, 1);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user