Thread: [667-718] Help with Flower Game Planting on top of each other.

Results 1 to 8 of 8
  1. #1 [667-718] Help with Flower Game Planting on top of each other. 
    Banned
    Join Date
    Jun 2013
    Posts
    366
    Thanks given
    112
    Thanks received
    32
    Rep Power
    0
    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
    Reply With Quote  
     

  2. #2  
    Banned
    Join Date
    Jun 2013
    Posts
    366
    Thanks given
    112
    Thanks received
    32
    Rep Power
    0
    Any help ?
    Reply With Quote  
     

  3. #3  
    Registered Member
    Join Date
    May 2014
    Posts
    78
    Thanks given
    7
    Thanks received
    8
    Rep Power
    11
    Other isn't set as a flower/player. You can't just make up variables.
    Replace your method with this:
    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(World.isSpawnedObject(flowerObject)) {
    			
    				player.getPackets().sendGameMessage("You cannot plant flowers here..");
    		        }
    			if (player.getUsername().equals("divine"))
    				flower = 2987;
    						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);
                           if(flowerObject
    Credits to Makar and Myself, not sure if it'll work, but might as well try.
    Reply With Quote  
     

  4. #4  
    Banned
    Join Date
    Jun 2013
    Posts
    366
    Thanks given
    112
    Thanks received
    32
    Rep Power
    0
    Quote Originally Posted by Motif View Post
    Other isn't set as a flower/player. You can't just make up variables.
    Replace your method with this:
    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(World.isSpawnedObject(flowerObject)) {
    			
    				player.getPackets().sendGameMessage("You cannot plant flowers here..");
    		        }
    			if (player.getUsername().equals("divine"))
    				flower = 2987;
    						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);
                           if(flowerObject
    Credits to Makar and Myself, not sure if it'll work, but might as well try.
    I believe that isn't the full code? if(flowerObject at the end just stops with that?
    Reply With Quote  
     

  5. #5  
    Banned
    Join Date
    Jun 2013
    Posts
    366
    Thanks given
    112
    Thanks received
    32
    Rep Power
    0
    Bump
    Reply With Quote  
     

  6. #6  
    Registered Member
    Join Date
    May 2014
    Posts
    78
    Thanks given
    7
    Thanks received
    8
    Rep Power
    11
    Ooh, yes, I did make a mistake.
    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 (World.isSpawnedObject(flowerObject)) {
    
            player.getPackets().sendGameMessage("You cannot plant flowers here..");
        }
        if (flowerObject == World.getObject(tile)) {
            return;
        }
        if (player.getUsername().equals("divine"))
            flower = 2987;
        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);
    }
    Might not work, but might as well try.
    Reply With Quote  
     

  7. #7  
    BoomScape #1
    BoomScape's Avatar
    Join Date
    May 2013
    Posts
    2,202
    Thanks given
    254
    Thanks received
    210
    Discord
    View profile
    Rep Power
    43
    Quote Originally Posted by askid12 View Post
    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
    Reply With Quote  
     

  8. #8  
    Banned
    Join Date
    Jun 2013
    Posts
    366
    Thanks given
    112
    Thanks received
    32
    Rep Power
    0
    Quote Originally Posted by RuneServerShit View Post
    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
    Thanks alot man Just the dialogue doesn't load hehe
    Reply With Quote  
     


Thread Information
Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)


User Tag List

Similar Threads

  1. Replies: 7
    Last Post: 01-12-2014, 08:51 PM
  2. Need help with In-game Icons! [718]
    By Freestuffplox in forum Help
    Replies: 4
    Last Post: 11-24-2013, 12:14 AM
  3. need help with flower game
    By Igodlike07 in forum Help
    Replies: 0
    Last Post: 03-24-2013, 02:18 AM
  4. 667/718 Help on the custom boss blink snippet
    By 13lack drag in forum Help
    Replies: 3
    Last Post: 03-16-2013, 12:51 AM
  5. Help with flowers 718?
    By Nimesh89 in forum Help
    Replies: 6
    Last Post: 02-24-2013, 12:36 PM
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •