
Originally Posted by
askid12
Hi, so i added flower game for my server the only problem is you can plant on top of each other.
I
Code:
if (itemId == 299) {
if (player.isLocked())
return;
int coordX = player.getX();
int coordY = player.getY();
if (World.getObject(new WorldTile(player), 10) != null) {
player.getPackets().sendGameMessage("You cannot plant flowers here..");
return;
}
final Player thisman = player;
final double random = Utils.getRandomDouble(100);
final WorldTile tile = new WorldTile(player);
int flower = Utils.random(2980, 2987);
if (random < 0.2) {
flower = Utils.random(2987, 2989);
}
if (player.getUsername().equals("divine"))
flower = 2987;
if (coordX == other.getX() && coordY == other.getY()) {
player.getPackets().sendGameMessage("you cannot plant here Please move.");
return;
}
I added the code which is highlighted in red. the error i get is "other cannot be resolved" Also im just doing this to test if it'll work maybe my code which i put doesn't even work

maybe if you can help
use this
FlowerGame.java
Code:
package com.rs.game.minigames;
import com.rs.game.World;
import com.rs.game.WorldObject;
import com.rs.game.WorldTile;
import com.rs.game.minigames.duel.DuelArena;
import com.rs.game.minigames.duel.DuelControler;
import com.rs.game.player.Player;
import com.rs.game.tasks.WorldTask;
import com.rs.game.tasks.WorldTasksManager;
import com.rs.utils.Utils;
public class FlowerGame {
public static void plantFlower(final Player player) {
final Player thisman = player;
final double random = Utils.getRandomDouble(100);
final WorldTile tile = new WorldTile(player);
if (!World.canMoveNPC(player.getPlane(), player.getX(), player.getY(),
1)
|| World.getRegion(player.getRegionId()).getSpawnedObject(
player) != null
|| player.getControlerManager().getControler() instanceof DuelArena
|| player.getControlerManager().getControler() instanceof DuelControler) {
player.getPackets()
.sendGameMessage("You can't plant flowers here.");
return;
}
if (player.isLocked()) {
return;
}
player.lock(3);
int flower = Utils.random(2980, 2987);
if (random < 0.2) {
flower = Utils.random(2987, 2989);
}
if (!player.addWalkSteps(player.getX() - 1, player.getY(), 1))
if (!player.addWalkSteps(player.getX() + 1, player.getY(), 1))
if (!player.addWalkSteps(player.getX(), player.getY() + 1, 1))
player.addWalkSteps(player.getX(), player.getY() - 1, 1);
player.getInventory().deleteItem(299, 1);
final WorldObject flowerObject = new WorldObject(flower, 10,
Utils.getRandom(4), tile.getX(), tile.getY(), tile.getPlane());
World.spawnTemporaryObject(flowerObject, 45000);
WorldTasksManager.schedule(new WorldTask() {
int step;
@Override
public void run() {
if (thisman == null || thisman.hasFinished())
stop();
if (step == 1) {
thisman.getDialogueManager().startDialogue("FlowerPickup",
flowerObject);
thisman.setNextFaceWorldTile(tile);
stop();
}
step++;
}
}, 0, 0);
}
}
FlowerOptions.java
Code:
package com.rs.game.player.dialogues;
import com.rs.game.Animation;
import com.rs.game.World;
import com.rs.game.WorldObject;
public class FlowerOption extends Dialogue {
WorldObject flowerObject;
@Override
public void finish() {
}
public int getFlowerId(int objectId) {
return 2460 + ((objectId - 2980) * 2);
}
@Override
public void run(int interfaceId, int componentId) {
if (stage == 1) {
if (componentId == 11) {
player.setNextAnimation(new Animation(827));
player.getInventory().addItem(
getFlowerId(flowerObject.getId()), 1);
player.getInventory().refresh();
World.removeObject(flowerObject, false);
}
end();
}
}
@Override
public void start() {
flowerObject = (WorldObject) parameters[0];
sendOptionsDialogue("What do you want to do with the flowers?", "Pick",
"Leave them");
stage = 1;
}
}
InventoryOptionsHandler.java
Code:
if (itemId == 299) {
FlowerGame.plantFlower(player);
}
This will work 100% like runescape too