Thread: Pest control interface won't display [pi]

Results 1 to 3 of 3
  1. #1 Pest control interface won't display [pi] 
    Registered Member
    Join Date
    Mar 2017
    Posts
    39
    Thanks given
    2
    Thanks received
    0
    Rep Power
    11
    Code:
    package server.model.minigames;
    
    import server.model.npcs.NPCHandler;
    import server.model.players.Client;
    import server.model.players.PlayerHandler;
    import server.Server;
    
    /**
     * @author Sanity
     */
    
    public class PestControl {
    	
    	public PestControl() {
    		
    	}
    	
    	public final int GAME_TIMER = 140; //10 minutes
    	public final int WAIT_TIMER = 7;
    	
    	public int gameTimer = -1;
    	public int waitTimer = 15;
    	public int properTimer = 0;
    	
    	public void process() {
    		setInterface();
    		if (properTimer > 0) {
    			properTimer--;
    			return;
    		} else {
    			properTimer = 4;
    		}
    		if (waitTimer > 0)
    			waitTimer--;
    		else if (waitTimer == 0)
    			startGame();
    		    setInterface();
    		if (gameTimer > 0) {
    			gameTimer--;
    			if (allPortalsDead()) {
    				endGame(true);
    			}
    		} else if (gameTimer == 0)
    			endGame(false);
    	}
    	
    	public void startGame() {
    		if (playersInBoat() > 0) {
    			gameTimer = GAME_TIMER;
    			waitTimer = -1;
    			//spawn npcs
    			spawnNpcs();
    			setInterface();
    
    			//move players into game
    			for (int j = 0; j < Server.playerHandler.players.length; j++) {
    				if (Server.playerHandler.players[j] != null) {
    					if (Server.playerHandler.players[j].inPcBoat()) {
    						movePlayer(j);
    					}			
    				}		
    			}
    		} else {
    			waitTimer = WAIT_TIMER;
    			for (int j = 0; j < Server.playerHandler.players.length; j++) {
    				if (Server.playerHandler.players[j] != null) {
    					if (Server.playerHandler.players[j].inPcBoat()) {
    						Client c = (Client)Server.playerHandler.players[j];
    						c.sendMessage("There need to be at least 3 players to start a game of pest control.");
    					}			
    				}		
    			}
    		}
    	}
    	
    	public int playersInBoat() {
    		int count = 0;
    		for (int j = 0; j < Server.playerHandler.players.length; j++) {
    			if (Server.playerHandler.players[j] != null) {
    				if (Server.playerHandler.players[j].inPcBoat()) {
    						count++;
    				}
    			}
    		}
    		return count;
    	}
    	
    	public void endGame(boolean won) {
    		gameTimer = -1;
    		waitTimer = WAIT_TIMER;
    		for (int j = 0; j < Server.playerHandler.players.length; j++) {
    			if (Server.playerHandler.players[j] != null) {
    				if (Server.playerHandler.players[j].inPcGame()) {
    					Client c = (Client)Server.playerHandler.players[j];
    					c.getPA().movePlayer(2657, 2639, 0);
    					if (won && c.pcDamage > 4) {
    						c.sendMessage("You have won the pest control game and have been awarded 10 Pest Control points.");
    						c.pcPoints += 10;
    						c.playerLevel[3] = c.getLevelForXP(c.playerXP[3]);
    						c.playerLevel[5] = c.getLevelForXP(c.playerXP[5]);
    						c.specAmount = 10;
    						c.getItems().addItem(995, c.combatLevel * 10000);
    						c.getPA().refreshSkill(3);
    						c.getPA().refreshSkill(5);
    					} else if (won) {
    						c.sendMessage("The void knights notice your lack of zeal.");
    					} else {
    						c.sendMessage("You failed to kill all the portals in 5 minutes and have not been awarded any points.");
    					}
    					c.pcDamage = 0;
    					c.getItems().addSpecialBar(c.playerEquipment[c.playerWeapon]);
    					c.getCombat().resetPrayers();
    				}			
    			}		
    		}
    
    		for (int j = 0; j < Server.npcHandler.npcs.length; j++) {
    			if (Server.npcHandler.npcs[j] != null) {
    				if (Server.npcHandler.npcs[j].npcType >= 3777 && Server.npcHandler.npcs[j].npcType <= 3780)
    					Server.npcHandler.npcs[j] = null;
    			}			
    		}
    	}
    	
    	public boolean allPortalsDead() {
    		int count = 0;
    		for (int j = 0; j < Server.npcHandler.npcs.length; j++) {
    			if (Server.npcHandler.npcs[j] != null) {
    				if (Server.npcHandler.npcs[j].npcType >= 3777 && Server.npcHandler.npcs[j].npcType <= 3780)
    					if (Server.npcHandler.npcs[j].needRespawn)
    						count++;		
    			}			
    		}
    		return count >= 4;	
    	}
    	
    	public void movePlayer(int index) {
    		Client c = (Client)Server.playerHandler.players[index];
    		if (c.combatLevel < 40) {
    			c.sendMessage("You must be at least 40 to enter this boat.");
    			return;
    		}
    		c.getPA().movePlayer(2658,2611,0);
    		setInterface();
    
    	}
    	
    	public void spawnNpcs() {
    		Server.npcHandler.spawnNpc2(3777,2628,2591,0,0,200,0,0,100);
    		Server.npcHandler.spawnNpc2(3778,2680,2588,0,0,200,0,0,100);
    		Server.npcHandler.spawnNpc2(3779,2669,2570,0,0,200,0,0,100);
    		Server.npcHandler.spawnNpc2(3780,2645,2569,0,0,200,0,0,100);
    	}
    	
    	
    	public void setInterface() {
    		for (int j = 0; j < PlayerHandler.players.length; j++) {
    			if (PlayerHandler.players[j] != null) {
    				if (PlayerHandler.players[j].inPcBoat()) {
    					Client c = (Client) PlayerHandler.players[j];
    					c.getPA().sendFrame126("Next Departure: "+waitTimer+"", 21120);
    					c.getPA().sendFrame126("Players Ready: "+playersInBoat()+"", 21121);
    					c.getPA().sendFrame126("(Need 3 to 25 players)", 21122);
    					c.getPA().sendFrame126("Points: "+c.pcPoints+"", 21123);
    				}
    				if (PlayerHandler.players[j].inPcGame()) {
    					Client c = (Client) PlayerHandler.players[j];
    					for (j = 0; j < NPCHandler.npcs.length; j++) {
    						if (NPCHandler.npcs[j] != null) {
    							if (NPCHandler.npcs[j].npcType == 3777)
    								c.getPA().sendFrame126("" + NPCHandler.npcs[j].HP + "", 21111);
    							if (NPCHandler.npcs[j].npcType == 3778)
    								c.getPA().sendFrame126("" + NPCHandler.npcs[j].HP + "", 21112);
    							if (NPCHandler.npcs[j].npcType == 3779)
    								c.getPA().sendFrame126("" + NPCHandler.npcs[j].HP + "", 21113);
    							if (NPCHandler.npcs[j].npcType == 3780)
    								c.getPA().sendFrame126("" + NPCHandler.npcs[j].HP + "", 21114);
    						}
    					}
    					c.getPA().sendFrame126("0", 21115);
    					c.getPA().sendFrame126("0", 21116);
    					c.getPA().sendFrame126("Time remaining: "+gameTimer+"", 21117);
    				}
    			}
    		}
    	}
    
    
    }

    pest control class





    Code:
    	if(inPcBoat()) {
    		    getPA().walkableInterface(21119);
    		} else if(inPcGame()) {
    		    getPA().walkableInterface(21100);
    		}
    added in my client.java process() method










    Nothing happens..would appreciate some help.
    Reply With Quote  
     

  2. #2  
    08-13, SpawnScape Owner

    jet kai's Avatar
    Join Date
    Dec 2009
    Age
    28
    Posts
    870
    Thanks given
    630
    Thanks received
    957
    Rep Power
    5000
    Have you tried to test if the interfaces work by making a command like "::testinterface"
    Pop the setInterface code in there, then send the interface and then see if it works?

    Otherwise it's either your walkableInterface void, or the interface isn't in the client.
    Reply With Quote  
     

  3. #3  
    Registered Member
    Join Date
    Dec 2010
    Age
    25
    Posts
    139
    Thanks given
    8
    Thanks received
    7
    Rep Power
    13
    use a task instead of proccessing it o.O
    and, probably theres a walkable interface overlapping
    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: 13
    Last Post: 07-24-2011, 03:47 AM
  2. [pi] Pest Control interfaces
    By Spooky in forum Snippets
    Replies: 73
    Last Post: 04-26-2011, 04:59 AM
  3. [PI] Pest Control Interfaces
    By morningstar in forum Help
    Replies: 0
    Last Post: 12-31-2010, 12:08 PM
  4. [pi] Pest Control Interface
    By Alexander in forum Help
    Replies: 1
    Last Post: 09-05-2010, 06:30 AM
  5. New Pest Control Interface
    By Scu11 in forum Show-off
    Replies: 12
    Last Post: 03-26-2009, 07:58 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
  •