Thread: [PI] Challenge option is attacking player?

Page 1 of 3 123 LastLast
Results 1 to 10 of 26
  1. #1 [PI] Challenge option is attacking player? 
    Registered Member I'mAGeek's Avatar
    Join Date
    Jan 2012
    Age
    28
    Posts
    504
    Thanks given
    146
    Thanks received
    44
    Rep Power
    16
    Fixed.

    Hey,
    If I click the challenge option in duel arena it wants to attack the player because it says:
    "Your opponent is not in the wilderness."

    I have checked the packets and they're not switched.

    Can anyone help me with this?




    Information:

    my checkreqs:
    Code:
    	public static boolean checkReqs(Client c) {
    		if(PlayerHandler.players[c.playerIndex] == null) {
    			return false;
    		}
    		
    		if (c.playerIndex == c.playerId)
    			return false;
    		if(!PlayerHandler.players[c.playerIndex].inWild() && !CastOnOther.castOnOtherSpells(c)) {
    			c.sendMessage("Your opponent is not in the wilderness!");
    			c.stopMovement();
    			c.getCombat().resetPlayerAttack();
    			return false;
    		}
    		if(!c.inWild() && !CastOnOther.castOnOtherSpells(c)) {
    			c.sendMessage("You are not in the wilderness.");
    			c.stopMovement();
    			c.getCombat().resetPlayerAttack();
    			return false;
    		}
    		if(Config.COMBAT_LEVEL_DIFFERENCE) {
    			if(c.inWild()) {
    				int combatDif1 = getCombatDifference(c.combatLevel, PlayerHandler.players[c.playerIndex].combatLevel);
    				if((combatDif1 > c.wildLevel || combatDif1 > PlayerHandler.players[c.playerIndex].wildLevel)) {
    					c.sendMessage("Your combat level difference is too great to attack that player here.");
    					c.stopMovement();
    					c.getCombat().resetPlayerAttack();
    					return false;
    				}
    			} else {
    				int myCB = c.combatLevel;
    				int pCB = PlayerHandler.players[c.playerIndex].combatLevel;
    				if((myCB > pCB + 12) || (myCB < pCB - 12)) {
    					c.sendMessage("You can only fight players in your combat range!");
    					c.stopMovement();
    					c.getCombat().resetPlayerAttack();
    					return false;
    				}
    			}
    		}
    		if(Config.SINGLE_AND_MULTI_ZONES) {
    			if(!PlayerHandler.players[c.playerIndex].inMulti()) {	// single combat zones
    				if(PlayerHandler.players[c.playerIndex].underAttackBy != c.playerId  && PlayerHandler.players[c.playerIndex].underAttackBy != 0) {
    					c.sendMessage("That player is already in combat.");
    					c.stopMovement();
    					c.getCombat().resetPlayerAttack();
    					return false;
    				}
    				if(PlayerHandler.players[c.playerIndex].playerId != c.underAttackBy && c.underAttackBy != 0 || c.underAttackBy2 > 0) {
    					c.sendMessage("You are already in combat.");
    					c.stopMovement();
    					c.getCombat().resetPlayerAttack();
    					return false;
    				}
    			}
    		}
    		return true;
    	}
    tradeandduel:
    [Java] Tradeanddueljava - Pastebin.com

    challenge option:
    Code:
      } else if (inDuelArena()) {
                getPA().walkableInterface(201);
                if (duelStatus == 5) {
                    getPA().showOption(3, 0, "Attack");
                } else {
                    getPA().showOption(3, 0, "Challenge");
                }
            }
    Challengeplayer packet:
    Code:
    package server.model.mobile.players.packets;
    
    import server.model.mobile.players.Client;
    import server.model.mobile.players.PacketType;
    import server.model.mobile.players.PlayerHandler;
    
    /**
     * Challenge Player
     **/
    public class ChallengePlayer implements PacketType {
    
    	@Override
    	public final void processPacket(Client c, int packetType, int packetSize) {
    		switch(packetType) {
    			case 128:
    			int answerPlayer = c.getInStream().readUnsignedWord();
    			if(PlayerHandler.players[answerPlayer] == null || c.arenas() || c.duelStatus == 5 || c.teleporting) {
    				return;
    			}
    
    			c.getTradeAndDuel().requestDuel(answerPlayer);
    			break;
    		}
    		}
    	}
    Reply With Quote  
     

  2. #2  
    Registered Member I'mAGeek's Avatar
    Join Date
    Jan 2012
    Age
    28
    Posts
    504
    Thanks given
    146
    Thanks received
    44
    Rep Power
    16
    bump
    Reply With Quote  
     

  3. #3  
    i want a PM. The best in life is free.
    Project M's Avatar
    Join Date
    Mar 2012
    Posts
    368
    Thanks given
    20
    Thanks received
    13
    Rep Power
    14
    Quote Originally Posted by I'mAGeek View Post
    bump
    i need this aswell
    Reply With Quote  
     

  4. #4  
    Registered Member I'mAGeek's Avatar
    Join Date
    Jan 2012
    Age
    28
    Posts
    504
    Thanks given
    146
    Thanks received
    44
    Rep Power
    16
    bump
    Reply With Quote  
     

  5. #5  
    Registered Member I'mAGeek's Avatar
    Join Date
    Jan 2012
    Age
    28
    Posts
    504
    Thanks given
    146
    Thanks received
    44
    Rep Power
    16
    bump
    Reply With Quote  
     

  6. #6  
    The Emperor of the Sands

    Azir's Avatar
    Join Date
    Nov 2008
    Posts
    2,466
    Thanks given
    8
    Thanks received
    487
    Rep Power
    117
    switch 1 to 4 or 5 lol


    Reply With Quote  
     

  7. #7  
    Banned
    Join Date
    Apr 2012
    Posts
    50
    Thanks given
    1
    Thanks received
    6
    Rep Power
    0
    Look in your checkReqs() method in your combat.

    Here is what mine is to send the duel request instead of attacking.

    Code:
    		if (PlayerHandler.players[c.playerIndex].inDuelArena()
    				&& c.duelStatus != 5 && !c.usingMagic && c.playerRights != 2) {
    			if (c.arenas() || c.duelStatus == 5) {
    				return false;
    			}
    			c.getTradeAndDuel().requestDuel(c.playerIndex);
    			return false;
    		}
    Reply With Quote  
     

  8. #8  
    Registered Member I'mAGeek's Avatar
    Join Date
    Jan 2012
    Age
    28
    Posts
    504
    Thanks given
    146
    Thanks received
    44
    Rep Power
    16
    Quote Originally Posted by StickyKGB View Post
    Look in your checkReqs() method in your combat.

    Here is what mine is to send the duel request instead of attacking.

    Code:
    		if (PlayerHandler.players[c.playerIndex].inDuelArena()
    				&& c.duelStatus != 5 && !c.usingMagic && c.playerRights != 2) {
    			if (c.arenas() || c.duelStatus == 5) {
    				return false;
    			}
    			c.getTradeAndDuel().requestDuel(c.playerIndex);
    			return false;
    		}
    This didn't work, nothing shows up.
    Reply With Quote  
     

  9. #9  
    Registered Member I'mAGeek's Avatar
    Join Date
    Jan 2012
    Age
    28
    Posts
    504
    Thanks given
    146
    Thanks received
    44
    Rep Power
    16
    bump
    Reply With Quote  
     

  10. #10  
    Registered Member I'mAGeek's Avatar
    Join Date
    Jan 2012
    Age
    28
    Posts
    504
    Thanks given
    146
    Thanks received
    44
    Rep Power
    16
    bump
    Reply With Quote  
     

Page 1 of 3 123 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. Replies: 1
    Last Post: 09-07-2012, 08:29 PM
  2. [PI] Duel Arena Challenge and Attack Option?
    By pro banana in forum Help
    Replies: 5
    Last Post: 12-30-2011, 03:09 AM
  3. Replies: 2
    Last Post: 04-14-2011, 09:31 PM
  4. Replies: 2
    Last Post: 03-15-2011, 12:24 PM
  5. Replies: 5
    Last Post: 05-19-2010, 03:02 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
  •