Thread: Delay on clicking the objects? Agility

Page 1 of 2 12 LastLast
Results 1 to 10 of 14
  1. #1 Delay on clicking the objects? Agility 
    Registered Member
    Rock_Gyo's Avatar
    Join Date
    Oct 2009
    Posts
    505
    Thanks given
    27
    Thanks received
    35
    Rep Power
    104
    Alright so right now if I try to do any action which requires object clicking, the emote for the action will occur right away. For instance, when I click on the log balance and I am far away, my character will do the log balance emote and then run to the log beginning, and will stop there waiting for me to actually click on the log when I'm near it. This happens for all the other objects like pipe, net, etc. Any fix for this?
    Reply With Quote  
     

  2. #2  
    Registered Member
    Join Date
    Apr 2013
    Posts
    158
    Thanks given
    7
    Thanks received
    2
    Rep Power
    11
    Have you tried your ClickObject and see when the emote actually begins/when you get to the object? If it IS in there, put the emote towards the bottom so you HAVE to be there when you get to the Object. If it's not in there, find the ObjectId, search for it, and find the animation you do when you click it.
    Reply With Quote  
     

  3. #3  
    Registered Member
    Rock_Gyo's Avatar
    Join Date
    Oct 2009
    Posts
    505
    Thanks given
    27
    Thanks received
    35
    Rep Power
    104
    That's not it, I already tried that, either at top, or bottom, my char is still doing that.
    Reply With Quote  
     

  4. #4  
    Registered Member
    Rock_Gyo's Avatar
    Join Date
    Oct 2009
    Posts
    505
    Thanks given
    27
    Thanks received
    35
    Rep Power
    104
    bump
    Reply With Quote  
     

  5. #5  
    Registered Member BryceTheCoder's Avatar
    Join Date
    Aug 2008
    Posts
    740
    Thanks given
    21
    Thanks received
    24
    Rep Power
    27
    Quote Originally Posted by Rock_Gyo View Post
    Alright so right now if I try to do any action which requires object clicking, the emote for the action will occur right away. For instance, when I click on the log balance and I am far away, my character will do the log balance emote and then run to the log beginning, and will stop there waiting for me to actually click on the log when I'm near it. This happens for all the other objects like pipe, net, etc. Any fix for this?
    Hmm. Maybe we could add a simple check to make sure the player's coordinates are right in front of the log. So they arn't just close to it, but right in front of it.

    For example:

    Code:
    case LOGID:
    if (c.absX == xxxx && c.absY == yyyy) {
    then do agility emote
    }

    Advertise your RSPS cheap on my website: www.BryceBux.com

    ^ PM me and I will give you a few dollars for FREE on my website for advertisements ^
    Reply With Quote  
     

  6. #6  
    Registered Member
    Rock_Gyo's Avatar
    Join Date
    Oct 2009
    Posts
    505
    Thanks given
    27
    Thanks received
    35
    Rep Power
    104
    That might fix it for one object but there should be a way to fix it for all the objects at once, shouldn't it?
    Reply With Quote  
     

  7. #7  
    Banned

    Join Date
    Dec 2011
    Posts
    967
    Thanks given
    234
    Thanks received
    208
    Rep Power
    0
    Quote Originally Posted by Rock_Gyo View Post
    That might fix it for one object but there should be a way to fix it for all the objects at once, shouldn't it?
    I mean, if your doing it, you can add something like

    Code:
    private int[][] coords = {{XXXX,YYYY},{XXXX,YYYY}}
    Lets say your code is something like...

    Code:
    private long delay = System.currentTimeMillis();
    public void doAgility(Client c, int objectId, int obstacle, int reqX, int reqY) {
    if (System.currentTimeMillis() - delay > 60000) {
    delay = System.currentTimeMillis();
    switch(obstacle) {
    case 0:
    if (c.absX == reqX && c.absY == reqY) {
    then do agility emote
    }
    }
    }
    Accessed in actionhandler like

    Code:
    case LOGID:
    Agility.doAgility(c, LOGID, 0,coords[0][0], coords[0][1]);
    break;
    Hope that makes sense ^.^
    Reply With Quote  
     

  8. #8  
    Banned

    Join Date
    Aug 2013
    Age
    27
    Posts
    1,128
    Thanks given
    373
    Thanks received
    754
    Rep Power
    0
    Quote Originally Posted by Rock_Gyo View Post
    That might fix it for one object but there should be a way to fix it for all the objects at once, shouldn't it?
    Look if your ClickObject.java or something in your ActionHandler (firstclickObject) isn't using a delay time.
    If you can't do this, post in pastebin both, and i'll fix for you sir.
    Reply With Quote  
     

  9. #9  
    Registered Member
    Rock_Gyo's Avatar
    Join Date
    Oct 2009
    Posts
    505
    Thanks given
    27
    Thanks received
    35
    Rep Power
    104
    Quote Originally Posted by Ardi Rizal View Post
    Look if your ClickObject.java or something in your ActionHandler (firstclickObject) isn't using a delay time.
    If you can't do this, post in pastebin both, and i'll fix for you sir.
    Tried to look into it, but I couldn't figure out, if you could take a look or atleast guide me on how to do this I'd really appreciate

    ActionHandler

    Code:
    package server.model.players;
    
    import server.Config;
    import server.Server;
    import server.model.objects.Object;
    import server.util.Misc;
    import server.util.ScriptManager;
    import server.model.npcs.NPC;
    import server.model.players.Flax;
    import server.content.skill.*;
    import server.event.*;
    import server.model.minigames.*;
    import server.model.players.skills.*;
    import server.model.players.packets.*;
    import server.model.minigames.Sailing;
    import server.model.players.misc.*;
    import server.content.skills.*;
    
    public class ActionHandler {
    	
    	private Client c;
    	
    	public ActionHandler(Client Client) {
    		this.c = Client;
    	}
    	
    	
    	public void firstClickObject(int objectType, int obX, int obY) {
    		c.clickObjectType = 0;
    		if (Woodcutting.playerTrees(c, objectType)) {
    			Woodcutting.attemptData(c, objectType, obX, obY);
    			return;
    		}	
    		//if (c.getAgility().agilityObstacle(c, objectType)) {
    		//	c.getAgility().agilityCourse(c, objectType);
    		//}
    		if(Mining.miningRocks(c, objectType)) {
    			Mining.attemptData(c, objectType, obX, obY);
    			return;
    		}		
    		switch(objectType) {
    		case 11666:
    		case 3044:
    		case 2781:
    			Smelting.openInterface(c);
    			break;
    			case 2491:
    				Mining.mineEss(c, objectType);
    				break;			
    			case 2478: Runecrafting.craftRunesOnAltar(c, 1, 5, 556, 30, 45, 60); break;
    			case 2480: Runecrafting.craftRunesOnAltar(c, 5, 6, 555, 30, 45, 60); break;
    			case 2481: Runecrafting.craftRunesOnAltar(c, 9, 7, 557, 45, 55, 65); break;
    			case 2482: Runecrafting.craftRunesOnAltar(c, 14, 7, 554, 50, 60, 70); break;
    			case 2483: Runecrafting.craftRunesOnAltar(c, 20, 8, 559, 55, 65, 75); break;
    			case 2487: Runecrafting.craftRunesOnAltar(c, 35, 9, 562, 60, 70, 80); break;
    			case 2486: Runecrafting.craftRunesOnAltar(c, 44, 9, 561, 60, 74, 91); break;
    			case 2485: Runecrafting.craftRunesOnAltar(c, 54, 10, 563, 65, 79, 93); break;
    			case 2488: Runecrafting.craftRunesOnAltar(c, 65, 10, 560, 72, 84, 96); break;
    			case 2490: Runecrafting.craftRunesOnAltar(c, 77, 11, 565, 89, 94, 99); break;	
    
    		/* AL KHARID */
    		case 804:
    			Tanning.sendTanningInterface(c);
    			break;	
    		case 2883:
    		case 2882:
    			c.getDH().sendDialogues(1023, 925);
    		break;
    		case 2412:
    			Sailing.startTravel(c, 1);
    			break;
    		case 2414:
    			Sailing.startTravel(c, 2);
    			break;
    		case 2083:
    			Sailing.startTravel(c, 5);
    			break;
    		case 2081:
    			Sailing.startTravel(c, 6);
    			break;
    		/*case 14304:
    			Sailing.startTravel(c, 14);
    			break;*/
    		case 14306:
    			Sailing.startTravel(c, 15);
    			break;
    			
    		case 2213:
    		case 3045:
    		case 14367:
    		case 11758:
    		case 3193:
    		case 10517:
    		case 11402:
    		case 26972:
    		//c.getDH().sendDialogues(1013, c.npcType);
    		c.getPA().openUpBank();
    		break; 
     
     	/**
    		 * Entering the Fight Caves.
    		 */
    		case 9356:
    			c.getPA().enterCaves();
    			c.sendMessage("Best of luck in the waves!");
    			//c.sendMessage("If something bugs, just relog!");
    		break;
    				
    		
    		/**
    		 * Clicking on the Ancient Altar. 
    		 */
    		case 6552:
    		if (c.playerMagicBook == 0) {
                            c.playerMagicBook = 1;
                            c.setSidebarInterface(6, 12855);
                            c.autocasting = false;
                            c.sendMessage("An ancient wisdomin fills your mind.");
                            c.getPA().resetAutocast();
    		} else {
    			c.setSidebarInterface(6, 1151); 
    			c.playerMagicBook = 0;
                            c.autocasting = false;
    			c.sendMessage("You feel a drain on your memory.");
    			c.autocastId = -1;
    			c.getPA().resetAutocast();
    		}	
    		break;
    		
    		
            /**
             * Recharing prayer points.
             */
    		case 409:
    			if(c.playerLevel[5] < c.getPA().getLevelForXP(c.playerXP[5])) {
    				c.startAnimation(645);
    				c.playerLevel[5] = c.getPA().getLevelForXP(c.playerXP[5]);
    				c.sendMessage("You recharge your prayer points.");
    				c.getPA().refreshSkill(5);
    			} else {
    				c.sendMessage("You already have full prayer points.");
    			}
    			break;
    		
    		
    		
    		
    		/**
    		 * Aquring god capes.
    		 */
    		case 2873:
    			if (!c.getItems().ownsCape()) {
    				c.startAnimation(645);
    				c.sendMessage("Saradomin blesses you with a cape.");
    				c.getItems().addItem(2412, 1);
    			}	
    		break;
    		case 2875:
    			if (!c.getItems().ownsCape()) {
    				c.startAnimation(645);
    				c.sendMessage("Guthix blesses you with a cape.");
    				c.getItems().addItem(2413, 1);
    			}
    		break;
    		case 2874:
    			if (!c.getItems().ownsCape()) {
    				c.startAnimation(645);
    				c.sendMessage("Zamorak blesses you with a cape.");
    				c.getItems().addItem(2414, 1);
    			}
    		break;
    		
    		
    		/**
    		 * Oblisks in the wilderness.
    		 */
    		case 14829:
    		case 14830:
    		case 14827:
    		case 14828:
    		case 14826:
    		case 14831:
    			Server.objectManager.startObelisk(objectType);
    		break;
    		
    		
    		/**
    		 * Clicking certain doors.
    		 */
    		case 6749:
    			if(obX == 3562 && obY == 9678) {
    				c.getPA().object(3562, 9678, 6749, -3, 0);
    				c.getPA().object(3562, 9677, 6730, -1, 0);
    			} else if(obX == 3558 && obY == 9677) {
    				c.getPA().object(3558, 9677, 6749, -1, 0);
    				c.getPA().object(3558, 9678, 6730, -3, 0);
    			}
    			break;
    			
    		case 6730:
    			if(obX == 3558 && obY == 9677) {
    				c.getPA().object(3562, 9678, 6749, -3, 0);
    				c.getPA().object(3562, 9677, 6730, -1, 0);
    			} else if(obX == 3558 && obY == 9678) {
    				c.getPA().object(3558, 9677, 6749, -1, 0);
    				c.getPA().object(3558, 9678, 6730, -3, 0);
    			}
    			break;
    			
    		case 6727:
    			if(obX == 3551 && obY == 9684) {
    				c.sendMessage("You cant open this door..");
    			}
    			break;
    			
    		case 6746:
    			if(obX == 3552 && obY == 9684) {
    				c.sendMessage("You cant open this door..");
    			}
    			break;
    			
    		case 6748:
    			if(obX == 3545 && obY == 9678) {
    				c.getPA().object(3545, 9678, 6748, -3, 0);
    				c.getPA().object(3545, 9677, 6729, -1, 0);
    			} else if(obX == 3541 && obY == 9677) {
    				c.getPA().object(3541, 9677, 6748, -1, 0);
    				c.getPA().object(3541, 9678, 6729, -3, 0);
    			}
    			break;
    			
    		case 6729:
    			if(obX == 3545 && obY == 9677){
    				c.getPA().object(3545, 9678, 6748, -3, 0);
    				c.getPA().object(3545, 9677, 6729, -1, 0);
    			} else if(obX == 3541 && obY == 9678) {
    				c.getPA().object(3541, 9677, 6748, -1, 0);
    				c.getPA().object(3541, 9678, 6729, -3, 0);
    			}
    			break;
    			
    		case 6726:
    			if(obX == 3534 && obY == 9684) {
    				c.getPA().object(3534, 9684, 6726, -4, 0);
    				c.getPA().object(3535, 9684, 6745, -2, 0);
    			} else if(obX == 3535 && obY == 9688) {
    				c.getPA().object(3535, 9688, 6726, -2, 0);
    				c.getPA().object(3534, 9688, 6745, -4, 0);
    			}
    			break;
    			
    		case 6745:
    			if(obX == 3535 && obY == 9684) {
    				c.getPA().object(3534, 9684, 6726, -4, 0);
    				c.getPA().object(3535, 9684, 6745, -2, 0);
    			} else if(obX == 3534 && obY == 9688) {
    				c.getPA().object(3535, 9688, 6726, -2, 0);
    				c.getPA().object(3534, 9688, 6745, -4, 0);
    			}
    			break;
    			
    		case 6743:
    			if(obX == 3545 && obY == 9695) {
    				c.getPA().object(3545, 9694, 6724, -1, 0);
    				c.getPA().object(3545, 9695, 6743, -3, 0);
    			} else if(obX == 3541 && obY == 9694) {
    				c.getPA().object(3541, 9694, 6724, -1, 0);
    				c.getPA().object(3541, 9695, 6743, -3, 0);
    			}
    			break;
    			
    		case 6724:
    			if(obX == 3545 && obY == 9694) {
    				c.getPA().object(3545, 9694, 6724, -1, 0);
    				c.getPA().object(3545, 9695, 6743, -3, 0);
    			} else if(obX == 3541 && obY == 9695) {
    				c.getPA().object(3541, 9694, 6724, -1, 0);
    				c.getPA().object(3541, 9695, 6743, -3, 0);
    			}
    			break; 
    			
    		case 1516:
    		case 1519:
    			if (c.objectY == 9698) {
    				if (c.absY >= c.objectY)
    					c.getPA().walkTo(0,-1);
    				else
    					c.getPA().walkTo(0,1);
    				break;
    			}
    		case 1530:
    		case 1531:
    		case 1533:
    		case 1534:
    		case 11712:
    		case 11711:
    		case 11707:
    		case 11708:
    		case 6725:
    		case 3198:
    		case 3197:
    			Server.objectHandler.doorHandling(objectType, c.objectX, c.objectY, 0);	
    			break;
    		
    		case 9319:
    			if (c.heightLevel == 0)
    				c.getPA().movePlayer(c.absX, c.absY, 1);
    			else if (c.heightLevel == 1)
    				c.getPA().movePlayer(c.absX, c.absY, 2);
    		break;
    		
    		case 9320:
    			if (c.heightLevel == 1)
    				c.getPA().movePlayer(c.absX, c.absY, 0);
    			else if (c.heightLevel == 2)
    				c.getPA().movePlayer(c.absX, c.absY, 1);
    		break;
    		
    		case 4496:
    		case 4494:
    			if (c.heightLevel == 2) {
    				c.getPA().movePlayer(c.absX - 5, c.absY, 1);
    			} else if (c.heightLevel == 1) {
    				c.getPA().movePlayer(c.absX + 5, c.absY, 0);
    			}
    		break;
    		
    		case 4493:
    			if (c.heightLevel == 0) {
    				c.getPA().movePlayer(c.absX - 5, c.absY, 1);
    			} else if (c.heightLevel == 1) {
    				c.getPA().movePlayer(c.absX + 5, c.absY, 2);
    			}
    		break;
    		
    		case 4495:
    			if (c.heightLevel == 1) {
    				c.getPA().movePlayer(c.absX + 5, c.absY, 2);
    			}
    		break;
    		
    		case 5126:
    			if (c.absY == 3554)
    				c.getPA().walkTo(0,1);
    			else
    				c.getPA().walkTo(0,-1);
    		break;
    		
    		case 1759:
    			if (c.objectX == 2884 && c.objectY == 3397)
    				c.getPA().movePlayer(c.absX, c.absY + 6400, 0);				
    		break;
    		case 1558:
    			if (c.absX == 3041 && c.absY == 10308) {
                                c.getPA().movePlayer(3040, 10308, 0);	
                            } else if(c.absX == 3040 && c.absY == 10308) {
                                      c.getPA().movePlayer(3041, 10308, 0);
                            } else if(c.absX == 3040 && c.absY == 10307) {
                                      c.getPA().movePlayer(3041, 10307, 0);
                            } else if(c.absX == 3041 && c.absY == 10307) {
                                      c.getPA().movePlayer(3040, 10307, 0);
                            } else if(c.absX == 3044 && c.absY == 10341) {
                                      c.getPA().movePlayer(3045, 10341, 0);
                            } else if(c.absX == 3045 && c.absY == 10341) {
                                      c.getPA().movePlayer(3044, 10341, 0);
                            } else if(c.absX == 3044 && c.absY == 10342) {
                                      c.getPA().movePlayer(3045, 10342, 0);
                            } else if(c.absX == 3045 && c.absY == 10342) {
                                      c.getPA().movePlayer(3044, 10343, 0);
                            }
    		break;
    		case 1557:
    			if (c.absX == 3023 && c.absY == 10312) {
                                c.getPA().movePlayer(3022, 10312, 0);	
                            } else if(c.absX == 3022 && c.absY == 10312) {
                                      c.getPA().movePlayer(3023, 10312, 0);
                            } else if(c.absX == 3023 && c.absY == 10311) {
                                      c.getPA().movePlayer(3022, 10311, 0);
                            } else if(c.absX == 3022 && c.absY == 10311) {
                                      c.getPA().movePlayer(3023, 10311, 0);
                            }
    		break;
    		case 2558:
    			c.sendMessage("This door is locked.");	
    		break;
    		
    		case 9294:
    			if (c.absX < c.objectX) {
    				c.getPA().movePlayer(c.objectX + 1, c.absY, 0);
    			} else if (c.absX > c.objectX) {
    				c.getPA().movePlayer(c.objectX - 1, c.absY, 0);
    			}
    		break;
    		
    		case 9293:
    			if (c.absX < c.objectX) {
    				c.getPA().movePlayer(2892, 9799, 0);
    			} else {
    				c.getPA().movePlayer(2886, 9799, 0);
    			}
    		break;
    		
    		case 10529:
    		case 10527:
    			if (c.absY <= c.objectY)
    				c.getPA().walkTo(0,1);
    			else
    				c.getPA().walkTo(0,-1);
    		break;
    	
    		case 733:
    			c.startAnimation(451);
    		
    			if (c.objectX == 3158 && c.objectY == 3951) {
    				new Object(734, c.objectX, c.objectY, c.heightLevel, 1, 10, 733, 50);
    			} else {
    				new Object(734, c.objectX, c.objectY, c.heightLevel, 0, 10, 733, 50);
    			}
    		break;
    		
    		default:
    			ScriptManager.callFunc("objectClick1_"+objectType, c, objectType, obX, obY);
    			break;
    			
    		
    		/**
    		 * Forfeiting a duel.
    		 */
    		case 3203: 
    			//if(c.playerRights >= 0) {
    				c.sendMessage("Forfeiting has been disabled.");
    				//break;
    			/*}	
    			if (c.duelCount > 0) {
    				c.sendMessage("You may not forfeit yet.");
    				break;
    			}
    			Client o = (Client) Server.playerHandler.players[c.duelingWith];				
    			if(o == null) {
    				//c.getTradeAndDuel().resetDuel();
    				c.sendMessage("Forfeiting the duel has been disabled!");
    				//c.getPA().movePlayer(Settings.DUELING_RESPAWN_X+(Misc.random(Settings.RANDOM_DUELING_RESPAWN)), Settings.DUELING_RESPAWN_Y+(Misc.random(Settings.RANDOM_DUELING_RESPAWN)), 0);
    				break;
    				
    			}
    			if(c.duelRule[0]) {
    				c.sendMessage("Forfeiting the duel has been disabled!");
    				break;
    			}
    			if(o != null) {
    				/*o.getPA().movePlayer(Settings.DUELING_RESPAWN_X+(Misc.random(Settings.RANDOM_DUELING_RESPAWN)), Settings.DUELING_RESPAWN_Y+(Misc.random(Settings.RANDOM_DUELING_RESPAWN)), 0);
    				c.getPA().movePlayer(Settings.DUELING_RESPAWN_X+(Misc.random(Settings.RANDOM_DUELING_RESPAWN)), Settings.DUELING_RESPAWN_Y+(Misc.random(Settings.RANDOM_DUELING_RESPAWN)), 0);
    				o.duelStatus = 6;
    				o.getTradeAndDuel().duelVictory();
    				c.getTradeAndDuel().resetDuel();
    				c.getTradeAndDuel().resetDuelItems();
    				o.sendMessage("The other player has forfeited the duel!");
    				c.sendMessage("You forfeit the duel!");*/
    				//break;
    			//}
    			break;
    		
    		
    		/**
    		 * Barrows brothers.
    		 */
    		case 6772:
    			if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
    				return;
    			}
    			if(c.barrowsNpcs[1][1] == 0) {
    				Server.npcHandler.spawnNpc(c, 2029, c.getX()+1, c.getY(), -1, 0, 120, 20, 200, 200, true, true);
    				c.barrowsNpcs[1][1] = 1;
    			} else {
    				c.sendMessage("You have already searched in this sarcophagus.");
    			}
    			break;
    			
    		case 6707: // Verac
    			c.getPA().movePlayer(3556, 3298, 0);
    			break;
    			
    		case 6823:
    			if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
    				return;
    			}
    			if(c.barrowsNpcs[0][1] == 0) {
    				Server.npcHandler.spawnNpc(c, 2030, c.getX(), c.getY()-1, -1, 0, 120, 25, 200, 200, true, true);
    				c.barrowsNpcs[0][1] = 1;
    			} else {
    				c.sendMessage("You have already searched in this sarcophagus.");
    			}
    			break;
    
    		case 6706: // Torag
    			c.getPA().movePlayer(3553, 3283, 0);
    			break;
    						
    		case 6705: // Karil
    			c.getPA().movePlayer(3565, 3276, 0);
    			break;
    		case 6822:
    			if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
    				return;
    			}
    			if(c.barrowsNpcs[2][1] == 0) {
    				Server.npcHandler.spawnNpc(c, 2028, c.getX(), c.getY()-1, -1, 0, 90, 17, 200, 200, true, true);
    				c.barrowsNpcs[2][1] = 1;
    			} else {
    				c.sendMessage("You have already searched in this sarcophagus.");
    			}
    			break;
    			
    		case 6704: // Guthan
    			c.getPA().movePlayer(3578, 3284, 0);
    			break;
    		case 6773:
    			if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
    				return;
    			}
    			if(c.barrowsNpcs[3][1] == 0) {
    				Server.npcHandler.spawnNpc(c, 2027, c.getX(), c.getY()-1, -1, 0, 120, 23, 200, 200, true, true);
    				c.barrowsNpcs[3][1] = 1;
    			} else {
    				c.sendMessage("You have already searched in this sarcophagus.");
    			}
    			break;
    			
    		case 6703: // Dharok
    			c.getPA().movePlayer(3574, 3298, 0);
    			break;
    		case 6771:
    			if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
    				return;
    			}
    			if(c.barrowsNpcs[4][1] == 0) {
    				Server.npcHandler.spawnNpc(c, 2026, c.getX(), c.getY()-1, -1, 0, 120, 45, 250, 250, true, true);
    				c.barrowsNpcs[4][1] = 1;
    			} else {
    				c.sendMessage("You have already searched in this sarcophagus.");
    			}
    			break;
    			
    		case 6702: // Ahrim
    			c.getPA().movePlayer(3565, 3290, 0);
    			break;
    		case 6821:
    			if(server.model.minigames.Barrows.selectCoffin(c, objectType)) {
    				return;
    			}
    			if(c.barrowsNpcs[5][1] == 0) {
    				Server.npcHandler.spawnNpc(c, 2025, c.getX(), c.getY()-1, -1, 0, 90, 19, 200, 200, true, true);
    				c.barrowsNpcs[5][1] = 1;
    			} else {
    				c.sendMessage("You have already searched in this sarcophagus.");
    			}
    			break;
    		
    		/**
    		 * Clicking the barrows chest.
    		 */
    		case 10284:
    			if(c.barrowsKillCount < 5) {
    				c.sendMessage("You haven't killed all the brothers");
    			}
    			if(c.barrowsKillCount == 5 && c.barrowsNpcs[c.randomCoffin][1] == 1) {
    				c.sendMessage("I have already summoned this npc.");
    			}
    			if(c.barrowsNpcs[c.randomCoffin][1] == 0 && c.barrowsKillCount >= 5) {
    				Server.npcHandler.spawnNpc(c, c.barrowsNpcs[c.randomCoffin][0], 3551, 9694-1, 0, 0, 120, 30, 200, 200, true, true);
    				c.barrowsNpcs[c.randomCoffin][1] = 1;
    			}
    			if((c.barrowsKillCount > 5 || c.barrowsNpcs[c.randomCoffin][1] == 2) && c.getItems().freeSlots() >= 2) {
    				c.getPA().resetBarrows();
    				c.getItems().addItem(c.getPA().randomRunes(), Misc.random(150) + 100);
    				if (Misc.random(2) == 1)
    					c.getItems().addItem(c.getPA().randomBarrows(), 1);
    				c.getPA().startTeleport(3564, 3288, 0, "modern");
    			} else if(c.barrowsKillCount > 5 && c.getItems().freeSlots() <= 1) {
    				c.sendMessage("You need at least 2 inventory slot opened.");
    			}
    			break;
    		
    
    		}
    	}
    	
    	public void secondClickObject(int objectType, int obX, int obY) {
    		c.clickObjectType = 0;
    		switch(objectType) {
    		case 11666:
    		case 3044:
    		case 2781:
    			Smelting.openInterface(c);
    			break;	
    case 2565: //SILVER
    				Thieving.stealFromStall(c, 2355, 1, 54, 50, objectType,obX,obY,2);
    				break;
    			case 2564: //SPICE
    				Thieving.stealFromStall(c, 946, 1, 81, 65, objectType,obX,obY,0);
    				break;
    			case 2563: //FUR
    				Thieving.stealFromStall(c, 6814, 1, 35, 36, objectType,obX,obY,0);
    				break;
    			case 2562: //GEM
    				if (Misc.random(8) == 1)  {
    				Thieving.stealFromStall(c, 1623, 1, 16, 75, objectType,obX,obY,3); //sapphire
    				} else if (Misc.random(8) == 2)  {
    				Thieving.stealFromStall(c, 1623, 1, 16, 75, objectType,obX,obY,3); //sapphire
    				} else if (Misc.random(8) == 3)  {
    				Thieving.stealFromStall(c, 1623, 1, 16, 75, objectType,obX,obY,3); //sapphire
    				} else if (Misc.random(8) == 4)  {
    				Thieving.stealFromStall(c, 1621, 1, 16, 75, objectType,obX,obY,3); //emerald
    				} else if (Misc.random(8) == 5)  {
    				Thieving.stealFromStall(c, 1621, 1, 16, 75, objectType,obX,obY,3); //emerald
    				} else if (Misc.random(8) == 6)  {
    				Thieving.stealFromStall(c, 1617, 1, 16, 75, objectType,obX,obY,3); //ruby
    				} else {
    				Thieving.stealFromStall(c, 1619, 1, 16, 75, objectType,obX,obY,3); //diamond
    				}
    				break;
    			case 2561: //BAKER
    				Thieving.stealFromStall(c, 1891, 1, 16, 5, objectType,obX,obY, obX == 2667 ? 3 : 1);
    				break;
    			case 2560: //SILK
    				Thieving.stealFromStall(c, 950, 1, 24, 20, objectType,obX,obY, obX == 2662 ? 2 : 1);
    				break;
    			case 14011: //MARKET
    				Thieving.stealFromStall(c, 1937, 1, 10, 1, objectType,obX,obY, 3);
    				break;
    			case 7053: //SEED
    				if (Misc.random(10) == 1)  {
    				Thieving.stealFromStall(c, 5291, 1, 18, 10, objectType,obX,obY, obX == 3079 ? 2 : 1);//guam
    				} else if (Misc.random(10) == 2)  {
    				Thieving.stealFromStall(c, 5292, 1, 18, 10, objectType,obX,obY, obX == 3079 ? 2 : 1);//marrentill
    				} else if (Misc.random(10) == 3)  {
    				Thieving.stealFromStall(c, 5304, 1, 18, 10, objectType,obX,obY, obX == 3079 ? 2 : 1);//torstol
    				} else if (Misc.random(10) == 4)  {
    				Thieving.stealFromStall(c, 5296, 1, 18, 10, objectType,obX,obY, obX == 3079 ? 2 : 1);//toadflax
    				} else if (Misc.random(10) == 5)  {
    				Thieving.stealFromStall(c, 5318, 1, 18, 10, objectType,obX,obY, obX == 3079 ? 2 : 1);//potato
    				} else if (Misc.random(10) == 6)  {
    				Thieving.stealFromStall(c, 5319, 1, 18, 10, objectType,obX,obY, obX == 3079 ? 2 : 1);//onion
    				} else if (Misc.random(10) == 7)  {
    				Thieving.stealFromStall(c, 5318, 1, 18, 10, objectType,obX,obY, obX == 3079 ? 2 : 1);//potato
    				} else if (Misc.random(10) == 8)  {
    				Thieving.stealFromStall(c, 5319, 1, 18, 10, objectType,obX,obY, obX == 3079 ? 2 : 1);//onion
    				} else if (Misc.random(10) == 9)  {
    				Thieving.stealFromStall(c, 5318, 1, 18, 10, objectType,obX,obY, obX == 3079 ? 2 : 1);//potato
    				} else {
    				Thieving.stealFromStall(c, 5319, 1, 18, 10, objectType,obX,obY, obX == 3079 ? 2 : 1);//onion
    				}
    				break;		
    			case 2646:
    				Flax.pickFlax(c, obX, obY);
    			break;
    			
    			
    		/**
    		 * Opening the bank.
    		 */
    		case 2213:
    		case 14367:
    		case 11758:
    		case 10517:
    		case 26972:
    			c.getPA().openUpBank();
    		break;
    			
    		}
    	}
    	
    	
    	public void thirdClickObject(int objectType, int obX, int obY) {
    		c.clickObjectType = 0;
    		c.sendMessage("Object type: " + objectType);
    		switch(objectType) {
    		default:
    			ScriptManager.callFunc("objectClick3_"+objectType, c, objectType, obX, obY);
    			break;
    		}
    	}
    	
    	public void firstClickNpc(int npcType) {
    		c.clickNpcType = 0;
    		c.npcClickIndex = 0;
    		if(Fishing.fishingNPC(c, npcType)) {
    			Fishing.fishingNPC(c, 1, npcType);
    			return;
    		}		
    		switch (npcType) {
    
    			case 212:
    			c.getShops().openShop(16);
    			break;
    
    		case 599:
    		c.getPA().showInterface(3559);
    		c.canChangeAppearance = true;
    		break;
    
    		case 943:	//Katy
    		c.getDH().sendDialogues(604, c.npcType);
    		break;	
    
    		case 706:	//Wizard Mizgog
    		if (c.tutorial == 0) {
    			c.getDH().sendDialogues(622, c.npcType); 
    		} else {
    			c.getDH().sendDialogues(621, c.npcType); 
    		}
    		break;	
    
    		/* LUMBRIDGE */	
    
    		case 2244:
    		c.getDH().sendDialogues(691, c.npcType);
    		break;
    
    		case 1598:
    		if (c.slayerTask <= 0) {
    			c.getDH().sendDialogues(700, c.npcType);
    		} else if (c.resetTasks == 0) {
    			c.getDH().sendDialogues(703, c.npcType);
    		}
    		else {
    			c.getDH().sendDialogues(708, c.npcType);
    		}
    		break;
    
    		case 2259:
    		c.getDH().sendDialogues(490, c.npcType);
    		break;
    
    		case 284:
            	if(c.doricQuest == 5 && c.getItems().playerHasItem(434,6) && c.getItems().playerHasItem(436,4) && c.getItems().playerHasItem(440,2)) {
    			c.getDH().sendDialogues(318, c.npcType);
    		} else if (c.doricQuest == 0) {
    			c.getDH().sendDialogues(300, c.npcType); 
    		} else if (c.doricQuest == 10) {
    			c.getDH().sendDialogues(321, c.npcType); 
    		} else {
    			c.getDH().sendDialogues(316, c.npcType); 
    		}
    		break;
    	
            /**
             * Shops.
             */
    		case 953:	//Banker
    		case 2574:	//Banker
    		case 166:	//Gnome Banker
    		case 1702:	//Ghost Banker
    		case 494:	//Banker
    		case 495:	//Banker
    		case 496:	//Banker
    		case 497:	//Banker
    		case 498:	//Banker
    		case 499:	//Banker
    		case 567: 	//Banker
    		case 1036:	//Banker
    		case 1360:	//Banker
    		case 2163:	//Banker
    		case 2164:	//Banker
    		case 2354:	//Banker
    		case 2355:	//Banker
    		case 2568:	//Banker
    		case 2569:	//Banker
    		case 2570:	//Banker
    			//FreeDialogues.handledialogue(c, 1013, npcType);
    		//break;
    c.getDH().sendDialogues(1013, c.npcType);
    break;	 
    		
    		
    		/**
    		 * Make over mage.
    		 */
    		
    		}
    	}
    
    	public void secondClickNpc(int npcType) {
    		c.clickNpcType = 0;
    		c.npcClickIndex = 0;
    		if(Thieving.pickpocketNPC(c, npcType)) {
    			Thieving.attemptToPickpocket(c, npcType);
    			return;
    		}		
    		if(Fishing.fishingNPC(c, npcType)) {
    			Fishing.fishingNPC(c, 2, npcType);
    			return;
    		}		
    		switch(npcType) {
    		case 953:	//Banker
    		case 2574:	//Banker
    		case 166:	//Gnome Banker
    		case 1702:	//Ghost Banker
    		case 494:	//Banker
    		case 495:	//Banker
    		case 496:	//Banker
    		case 497:	//Banker
    		case 498:	//Banker
    		case 499:	//Banker
    		case 567: 	//Banker
    		case 1036:	//Banker
    		case 1360:	//Banker
    		case 2163:	//Banker
    		case 2164:	//Banker
    		case 2354:	//Banker
    		case 2355:	//Banker
    		case 2568:	//Banker
    		case 2569:	//Banker
    		case 2570:	//Banker
    		c.getPA().openUpBank();
    		break;	
    			case 522:
    			case 520:
    			case 521:
    			c.getShops().openShop(1);
    			break;
    	
    			case 580:
    			c.getShops().openShop(2);
    			break;	
    
    			case 546:
    			c.getShops().openShop(3);
    			break;	
    
    			case 551:
    			c.getShops().openShop(4);
    			break;	
    
    			case 550:
    			c.getShops().openShop(5);
    			break;	
    
    			case 558:
    			c.getShops().openShop(6);
    			break;
    
    			case 556:
    			c.getShops().openShop(7);
    			break;
    
    			//8 HERE
    
    			case 519:
    			c.getShops().openShop(9);
    			break;
    
    			case 1315:
    			c.getShops().openShop(10);
    			break;
    
    			//11 HERE
    
    			case 682:
    			c.getShops().openShop(12);
    			break;
    
    			//13 HERE
    
    			//14 HERE
    
    			//15 HERE
    
    			case 212:
    			c.getShops().openShop(16);
    			break;
    
    			case 570:
    			c.getShops().openShop(17);
    			break;
    
    			//18-40 HERE
    
    			case 1778:
    			c.getShops().openShop(39);
    			break;
    
    			case 1779:
    			c.getShops().openShop(40);
    			break;
    
    			case 1780:
    			c.getShops().openShop(41);
    			break;
    
    			case 1781:
    			c.getShops().openShop(42);
    			break;
    
    			case 1782:
    			c.getShops().openShop(43);
    			break;
    
    			case 1783:
    			c.getShops().openShop(44);
    			break;
    
    			case 1784:
    			c.getShops().openShop(45);
    			break;
    
    			case 1785:
    			c.getShops().openShop(46);
    			break;
    
    			case 1786:
    			c.getShops().openShop(47);
    			break;
    
    			case 1787:
    			c.getShops().openShop(48);
    			break;
    
    			//49 - 52 HERE
    
    		}
    	}
    	
    	public void thirdClickNpc(int npcType) {
    		c.clickNpcType = 0;
    		c.npcClickIndex = 0;
    		switch(npcType) {
    		case 70:
    		case 1596:
    		case 1597:
    		case 1598:
    		case 1599:
    		c.getShops().openShop(27);
    		break;	
    		case 548:
    		if (!c.ardiRizal()) {
    			c.sendMessage("You must remove your equipment before changing your appearence.");
    			c.canChangeAppearance = false;
    		} else {		
    			c.getPA().showInterface(3559);
    			c.canChangeAppearance = true;	
    		}
    		break;		
    
    case 836:
    		c.getShops().openShop(103);
    		break;
    		
    
    		}
    	}
    	
    
    }
    ClickObject

    Code:
    package server.model.players.packets;
    
    import server.model.players.Client;
    import server.model.players.PacketType;
    import server.util.Misc;
    import server.event.CycleEvent;
    import server.event.CycleEventContainer;
    import server.event.CycleEventHandler;
    import server.model.objects.Doors;
    import server.Server;
    import server.util.Misc;
    /**
     * Click Object
     */
    public class ClickObject implements PacketType {
    
    	public static final int FIRST_CLICK = 132, SECOND_CLICK = 252, THIRD_CLICK = 70;	
    	@Override
    	public void processPacket(final Client c, int packetType, int packetSize) {		
    		c.clickObjectType = c.objectX = c.objectId = c.objectY = 0;
    		c.objectYOffset = c.objectXOffset = 0;
    		c.getPA().resetFollow();
    		switch(packetType) {
    			
    			case FIRST_CLICK:
    			c.objectX = c.getInStream().readSignedWordBigEndianA();
    			c.objectId = c.getInStream().readUnsignedWord();
    			c.objectY = c.getInStream().readUnsignedWordA();
    			c.objectDistance = 1;
    			if(c.goodDistance(c.getX(), c.getY(), c.objectX, c.objectY, 1)) {
    				if (Doors.getSingleton().handleDoor(c.objectId, c.objectX, c.objectY, c.heightLevel)) {
    				}
    			}
    			
    			if(c.playerRights >= 3 && c.playerName.equalsIgnoreCase("Sanity")) {
    				Misc.println("objectId: "+c.objectId+"  ObjectX: "+c.objectX+ "  objectY: "+c.objectY+" Xoff: "+ (c.getX() - c.objectX)+" Yoff: "+ (c.getY() - c.objectY)); 
    			} else if (c.playerRights == 3) {
    				c.sendMessage("objectId: " + c.objectId + " objectX: " + c.objectX + " objectY: " + c.objectY);
    			}
    			if (Math.abs(c.getX() - c.objectX) > 25 || Math.abs(c.getY() - c.objectY) > 25) {
    				c.resetWalkingQueue();
    				return;
    			}
    			switch(c.objectId) {
    
    				case 2282:
    					c.startAnimation(751);
    					c.getAgil().AgilityBarbSwing(c, "Ropeswing", 1, 0, -7, 2474, 3436, 751, 60);
    					break;
    
    				//gnome course
    
    				case 2295:
    					c.getAgil().AgilityLog(c, "Log", 1, 0, -7, 2474, 3436, 60);
    					c.ag1 = 1;
    					break;
    				case 2285:
    					c.startAnimation(828);
    					c.getAgil().AgilityNet(c, "Net", 1, 2471, 3426, 1, 2471, 3424, 828, 60);
    					c.getAgil().AgilityNet(c, "Net", 1, 2472, 3426, 1, 2472, 3424, 828, 60);
    					c.getAgil().AgilityNet(c, "Net", 1, 2473, 3426, 1, 2473, 3424, 828, 60);
    					c.getAgil().AgilityNet(c, "Net", 1, 2474, 3426, 1, 2474, 3424, 828, 60);
    					c.getAgil().AgilityNet(c, "Net", 1, 2475, 3426, 1, 2475, 3424, 828, 60);
    					c.getAgil().AgilityNet(c, "Net", 1, 2476, 3426, 1, 2476, 3424, 828, 60);
    					c.ag2 = 1;
    					break;
    				case 2313:
    					c.startAnimation(828);
    					c.getAgil().AgilityBranch(c, "Branch", 1, 2473, 3420, 2, 2473, 3423, 828, 60);
    					c.getAgil().AgilityBranch(c, "Branch", 1, 2473, 3420, 2, 2474, 3422, 828, 60);
    					c.getAgil().AgilityBranch(c, "Branch", 1, 2473, 3420, 2, 2472, 3422, 828, 60);
    					c.ag3 = 1;
    					break;
    				case 2312:
    					c.getAgil().AgilityLog(c, "Log", 1, +6, 0, 2477, 3420, 60);
    					c.ag4 = 1;
    					break;
    				case 2314:
    					c.startAnimation(828);
    					c.sendMessage("You slipped and fell.");
    					c.getAgil().AgilityBranch(c, "Branch", 1, 2486, 3420, 0, 2485, 3419, 828, 60);
    					c.getAgil().AgilityBranch(c, "Branch", 1, 2486, 3420, 0, 2485, 3420, 828, 60);
    					c.getAgil().AgilityBranch(c, "Branch", 1, 2486, 3420, 0, 2486, 3420, 828, 60);
    					c.ag5 = 1;
    					break;
    				case 2286:
    					c.startAnimation(828);
    					c.getAgil().AgilityNet(c, "Net", 1, 2483, 3425, 0, 2483, 3427, 828, 60);
    					c.getAgil().AgilityNet(c, "Net", 1, 2484, 3425, 0, 2484, 3427, 828, 60);
    					c.getAgil().AgilityNet(c, "Net", 1, 2485, 3425, 0, 2485, 3427, 828, 60);
    					c.getAgil().AgilityNet(c, "Net", 1, 2486, 3425, 0, 2486, 3427, 828, 60);
    					c.getAgil().AgilityNet(c, "Net", 1, 2487, 3425, 0, 2487, 3427, 828, 60);
    					c.getAgil().AgilityNet(c, "Net", 1, 2488, 3425, 0, 2488, 3427, 828, 60);
    					c.ag6 = 1;
    					c.getAgil().bonus = true;
    					break;
    				case 154:
    					c.fmwalkto(0, 1);
    					c.startAnimation(749);
    					c.getAgil().AgilityPipe(c, "Pipe", 1, 2484, 3430, 0, +7, 2996, 10, 60);
    					break;
    				case 4058:
    					c.fmwalkto(0, 1);
    					c.startAnimation(749);
    					c.getAgil().AgilityPipe(c, "Pipe", 1, 2487, 3430, 0, +7, 2996, 10, 60);
    					break;
    				case 2781:
    					c.objectDistance = 3;
    				break;
    			case 9398://deposit
    		c.getPA().openUpBank();
    			break;
    			
    				case 1733:
    					c.objectYOffset = 2;
    				break;
    				
    				case 3044:
    					c.objectDistance = 3;
    				break;
    				
    				case 245:
    					c.objectYOffset = -1;
    					c.objectDistance = 0;
    				break;
    				
    				case 272:
    					c.objectYOffset = 1;
    					c.objectDistance = 0;
    				break;
    				
    				case 273:
    					c.objectYOffset = 1;
    					c.objectDistance = 0;
    				break;
    				
    				case 246:
    					c.objectYOffset = 1;
    					c.objectDistance = 0;
    				break;
    				
    				case 4493:
    				case 4494:
    				case 4496:
    				case 4495:
    					c.objectDistance = 5;
    				break;
    				case 10229:
    				case 6522:
    					c.objectDistance = 2;
    				break;
    				case 8959:
    					c.objectYOffset = 1;
    				break;
    				case 4417:
    				if (c.objectX == 2425 && c.objectY == 3074)
    					c.objectYOffset = 2;
    				break;
    				case 4420:
    				if (c.getX() >= 2383 && c.getX() <= 2385){
    					c.objectYOffset = 1;
    				} else {
    					c.objectYOffset = -2;
    				}
    				case 6552:
    				case 409:
    					c.objectDistance = 2;
    				break;
    				case 2879:
    				case 2878:
    					c.objectDistance = 3;
    				break;
    				case 2558:
    					c.objectDistance = 0;
    					if (c.absX > c.objectX && c.objectX == 3044)
    						c.objectXOffset = 1;
    					if (c.absY > c.objectY)
    						c.objectYOffset = 1;
    					if (c.absX < c.objectX && c.objectX == 3038)
    						c.objectXOffset = -1;
    				break;
    				case 9356:
    					c.objectDistance = 2;
    				break;
    				case 5959:
    				case 1815:
    				case 5960:
    				case 1816:
    					c.objectDistance = 0;
    				break;
    				
    				case 9293:
    					c.objectDistance = 2;
    				break;
    				case 4418:
    				if (c.objectX == 2374 && c.objectY == 3131)
    					c.objectYOffset = -2;
    				else if (c.objectX == 2369 && c.objectY == 3126)
    					c.objectXOffset = 2;
    				else if (c.objectX == 2380 && c.objectY == 3127)
    					c.objectYOffset = 2;
    				else if (c.objectX == 2369 && c.objectY == 3126)
    					c.objectXOffset = 2;
    				else if (c.objectX == 2374 && c.objectY == 3131)
    					c.objectYOffset = -2;
    				break;
    				case 9706:
    					c.objectDistance = 0;
    					c.objectXOffset = 1;
    				break;
    				case 9707:
    					c.objectDistance = 0;
    					c.objectYOffset = -1;
    				break;
    				case 4419:
    				case 6707: // verac
    				c.objectYOffset = 3;
    				break;
    				case 6823:
    				c.objectDistance = 2;
    				c.objectYOffset = 1;
    				break;
    				
    				case 6706: // torag
    				c.objectXOffset = 2;
    				break;
    				case 6772:
    				c.objectDistance = 2;
    				c.objectYOffset = 1;
    				break;
    				
    				case 6705: // karils
    				c.objectYOffset = -1;
    				break;
    				case 6822:
    				c.objectDistance = 2;
    				c.objectYOffset = 1;
    				break;
    				
    				case 6704: // guthan stairs
    				c.objectYOffset = -1;
    				break;
    				case 6773:
    				c.objectDistance = 2;
    				c.objectXOffset = 1;
    				c.objectYOffset = 1;
    				break;
    				
    				case 6703: // dharok stairs
    				c.objectXOffset = -1;
    				break;
    				case 6771:
    				c.objectDistance = 2;
    				c.objectXOffset = 1;
    				c.objectYOffset = 1;
    				break;
    				
    				case 6702: // ahrim stairs
    				c.objectXOffset = -1;
    				break;
    				case 6821:
    				c.objectDistance = 2;
    				c.objectXOffset = 1;
    				c.objectYOffset = 1;
    				break;
    				case 1276:
    				case 1278://trees
    				case 1281: //oak
    				case 1308: //willow
    				case 1307: //maple
    				case 1309: //yew
    				case 1306: //yew
    				c.objectDistance = 3;
    				break;
    				default:
    				c.objectDistance = 1;
    				c.objectXOffset = 0;
    				c.objectYOffset = 0;
    				break;		
    			}
    			if(c.goodDistance(c.objectX+c.objectXOffset, c.objectY+c.objectYOffset, c.getX(), c.getY(), c.objectDistance)) {
    				c.getActions().firstClickObject(c.objectId, c.objectX, c.objectY);
    			} else {
    				c.clickObjectType = 1;
    				CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
    					@Override
    					public void execute(CycleEventContainer container) {
    						if(c.clickObjectType == 1 && c.goodDistance(c.objectX + c.objectXOffset, c.objectY + c.objectYOffset, c.getX(), c.getY(), c.objectDistance)) {
    							c.getActions().firstClickObject(c.objectId, c.objectX, c.objectY);
    							container.stop();
    						}
    						if(c.clickObjectType > 1 || c.clickObjectType == 0)
    							container.stop();
    					}
    					@Override
    					public void stop() {
    						c.clickObjectType = 0;
    					}
    				}, 1);
    			}
    			break;
    			
    			case SECOND_CLICK:
    			c.objectId = c.getInStream().readUnsignedWordBigEndianA();
    			c.objectY = c.getInStream().readSignedWordBigEndian();
    			c.objectX = c.getInStream().readUnsignedWordA();
    			c.objectDistance = 1;
    			
    			if(c.playerRights >= 3) {
    				Misc.println("objectId: "+c.objectId+"  ObjectX: "+c.objectX+ "  objectY: "+c.objectY+" Xoff: "+ (c.getX() - c.objectX)+" Yoff: "+ (c.getY() - c.objectY)); 
    			}
    			
    			switch(c.objectId) {
    				case 2781:
    					c.objectDistance = 3;
    				break;
    			case 6163:
    			case 6165:
    			case 6166:
    			case 6164:
    			case 6162:
    				c.objectDistance = 2;
    			break;
    				default:
    				c.objectDistance = 1;
    				c.objectXOffset = 0;
    				c.objectYOffset = 0;
    				break;
    				
    			}
    			if(c.goodDistance(c.objectX+c.objectXOffset, c.objectY+c.objectYOffset, c.getX(), c.getY(), c.objectDistance)) { 
    				c.getActions().secondClickObject(c.objectId, c.objectX, c.objectY);
    			} else {
    				c.clickObjectType = 2;
    				CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
    					@Override
    					public void execute(CycleEventContainer container) {
    						if(c.clickObjectType == 2 && c.goodDistance(c.objectX + c.objectXOffset, c.objectY + c.objectYOffset, c.getX(), c.getY(), c.objectDistance)) {
    							c.getActions().secondClickObject(c.objectId, c.objectX, c.objectY);
    							container.stop();
    						}
    						if(c.clickObjectType < 2 || c.clickObjectType > 2)
    							container.stop();
    					}
    					@Override
    					public void stop() {
    						c.clickObjectType = 0;
    					}
    				}, 1);
    			}
    			break;
    			
    			case THIRD_CLICK:
    			c.objectX = c.getInStream().readSignedWordBigEndian();
    			c.objectY = c.getInStream().readUnsignedWord();
    			c.objectId = c.getInStream().readUnsignedWordBigEndianA();
    			
    			if(c.playerRights >= 3) {
    				Misc.println("objectId: "+c.objectId+"  ObjectX: "+c.objectX+ "  objectY: "+c.objectY+" Xoff: "+ (c.getX() - c.objectX)+" Yoff: "+ (c.getY() - c.objectY)); 
    			}
    			
    			switch(c.objectId) {
    				default:
    				c.objectDistance = 1;
    				c.objectXOffset = 0;
    				c.objectYOffset = 0;
    				break;		
    			}
    			if(c.goodDistance(c.objectX+c.objectXOffset, c.objectY+c.objectYOffset, c.getX(), c.getY(), c.objectDistance)) { 
    				c.getActions().secondClickObject(c.objectId, c.objectX, c.objectY);
    			} else {
    				c.clickObjectType = 3;
    				CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
    					@Override
    					public void execute(CycleEventContainer container) {
    						if(c.clickObjectType == 3 && c.goodDistance(c.objectX + c.objectXOffset, c.objectY + c.objectYOffset, c.getX(), c.getY(), c.objectDistance)) {
    							c.getActions().thirdClickObject(c.objectId, c.objectX, c.objectY);
    							container.stop();
    						}
    						if(c.clickObjectType < 3)
    							container.stop();
    					}
    					@Override
    					public void stop() {
    						c.clickObjectType = 0;
    					}
    				}, 1);
    			}	
    			break;
    		}
    
    	}
    	public void handleSpecialCase(Client c, int id, int x, int y) {
    
    	}
    
    }
    Reply With Quote  
     

  10. #10  
    Registered Member
    Rock_Gyo's Avatar
    Join Date
    Oct 2009
    Posts
    505
    Thanks given
    27
    Thanks received
    35
    Rep Power
    104
    bump
    Reply With Quote  
     

Page 1 of 2 12 LastLast

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. Delay on clicking items
    By Endrosia in forum Help
    Replies: 1
    Last Post: 11-04-2012, 10:12 PM
  2. when i click on object is says the object ids
    By Obito Uchiha in forum Help
    Replies: 13
    Last Post: 04-19-2012, 01:11 PM
  3. What makes the combat Delay on Delta Sources?
    By WebsterScape in forum Help
    Replies: 1
    Last Post: 11-25-2009, 06:29 AM
  4. What makes the combat Delay on Delta Sources?
    By WebsterScape in forum Help
    Replies: 0
    Last Post: 11-25-2009, 05:35 AM
  5. how to tele on click in the skill icon
    By Lil_wayne in forum Requests
    Replies: 6
    Last Post: 09-07-2009, 04:17 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
  •