Thread: Player dies, then gets nulled/invisible,etc.

Results 1 to 6 of 6
  1. #1 Player dies, then gets nulled/invisible,etc. 
    InvictusPK Developer
    fishboy9449's Avatar
    Join Date
    Jan 2014
    Posts
    413
    Thanks given
    125
    Thanks received
    37
    Rep Power
    13
    When a player dies, it can't move, is invisible, has 0 HP, but can talk. As another person you can see that said person but the person who died cannot. I have no clue where/why this is happening.

    Thanks in advance
    Reply With Quote  
     

  2. #2  
    Donator
    Kimchilove's Avatar
    Join Date
    Aug 2012
    Age
    25
    Posts
    211
    Thanks given
    4
    Thanks received
    24
    Rep Power
    11
    Bump
    Reply With Quote  
     

  3. #3  
    Registered Member

    Join Date
    Feb 2013
    Posts
    4,409
    Thanks given
    59
    Thanks received
    478
    Rep Power
    138
    Post your death method
    Reply With Quote  
     

  4. #4  
    Donator
    Kimchilove's Avatar
    Join Date
    Aug 2012
    Age
    25
    Posts
    211
    Thanks given
    4
    Thanks received
    24
    Rep Power
    11
    Spoiler for Death Method:
    Code:
    @Override
    	public void sendDeath(final Entity source) {
    		if (prayer.hasPrayersOn()
    				&& getTemporaryAttributtes().get("startedDuel") != Boolean.TRUE) {
    			if (prayer.usingPrayer(0, 22)) {
    				setNextGraphics(new Graphics(437));
    				final Player target = this;
    				if (isAtMultiArea()) {
    					for (int regionId : getMapRegionsIds()) {
    						List<Integer> playersIndexes = World
    								.getRegion(regionId).getPlayerIndexes();
    						if (playersIndexes != null) {
    							for (int playerIndex : playersIndexes) {
    								Player player = World.getPlayers().get(
    										playerIndex);
    								if (player == null
    										|| !player.hasStarted()
    										|| player.isDead()
    										|| player.hasFinished()
    										|| !player.withinDistance(this, 1)
    										|| !player.isCanPvp()
    										|| !target.getControlerManager()
    										.canHit(player))
    									continue;
    								player.applyHit(new Hit(
    										target,
    										Utils.getRandom((int) (skills
    												.getLevelForXp(Skills.PRAYER) * 2.5)),
    												HitLook.REGULAR_DAMAGE));
    							}
    						}
    						List<Integer> npcsIndexes = World.getRegion(regionId)
    								.getNPCsIndexes();
    						if (npcsIndexes != null) {
    							for (int npcIndex : npcsIndexes) {
    								NPC npc = World.getNPCs().get(npcIndex);
    								if (npc == null
    										|| npc.isDead()
    										|| npc.hasFinished()
    										|| !npc.withinDistance(this, 1)
    										|| !npc.getDefinitions()
    										.hasAttackOption()
    										|| !target.getControlerManager()
    										.canHit(npc))
    									continue;
    								npc.applyHit(new Hit(
    										target,
    										Utils.getRandom((int) (skills
    												.getLevelForXp(Skills.PRAYER) * 2.5)),
    												HitLook.REGULAR_DAMAGE));
    							}
    						}
    					}
    				} else {
    					if (source != null && source != this && !source.isDead()
    							&& !source.hasFinished()
    							&& source.withinDistance(this, 1))
    						source.applyHit(new Hit(target, Utils
    								.getRandom((int) (skills
    										.getLevelForXp(Skills.PRAYER) * 2.5)),
    										HitLook.REGULAR_DAMAGE));
    				}
    				WorldTasksManager.schedule(new WorldTask() {
    					@Override
    					public void run() {
    						World.sendGraphics(target, new Graphics(438),
    								new WorldTile(target.getX() - 1, target.getY(),
    										target.getPlane()));
    						World.sendGraphics(target, new Graphics(438),
    								new WorldTile(target.getX() + 1, target.getY(),
    										target.getPlane()));
    						World.sendGraphics(target, new Graphics(438),
    								new WorldTile(target.getX(), target.getY() - 1,
    										target.getPlane()));
    						World.sendGraphics(target, new Graphics(438),
    								new WorldTile(target.getX(), target.getY() + 1,
    										target.getPlane()));
    						World.sendGraphics(target, new Graphics(438),
    								new WorldTile(target.getX() - 1,
    										target.getY() - 1, target.getPlane()));
    						World.sendGraphics(target, new Graphics(438),
    								new WorldTile(target.getX() - 1,
    										target.getY() + 1, target.getPlane()));
    						World.sendGraphics(target, new Graphics(438),
    								new WorldTile(target.getX() + 1,
    										target.getY() - 1, target.getPlane()));
    						World.sendGraphics(target, new Graphics(438),
    								new WorldTile(target.getX() + 1,
    										target.getY() + 1, target.getPlane()));
    					}
    				});
    			} else if (prayer.usingPrayer(1, 17)) {
    				World.sendProjectile(this, new WorldTile(getX() + 2,
    						getY() + 2, getPlane()), 2260, 24, 0, 41, 35, 30, 0);
    				World.sendProjectile(this, new WorldTile(getX() + 2, getY(),
    						getPlane()), 2260, 41, 0, 41, 35, 30, 0);
    				World.sendProjectile(this, new WorldTile(getX() + 2,
    						getY() - 2, getPlane()), 2260, 41, 0, 41, 35, 30, 0);
    
    				World.sendProjectile(this, new WorldTile(getX() - 2,
    						getY() + 2, getPlane()), 2260, 41, 0, 41, 35, 30, 0);
    				World.sendProjectile(this, new WorldTile(getX() - 2, getY(),
    						getPlane()), 2260, 41, 0, 41, 35, 30, 0);
    				World.sendProjectile(this, new WorldTile(getX() - 2,
    						getY() - 2, getPlane()), 2260, 41, 0, 41, 35, 30, 0);
    
    				World.sendProjectile(this, new WorldTile(getX(), getY() + 2,
    						getPlane()), 2260, 41, 0, 41, 35, 30, 0);
    				World.sendProjectile(this, new WorldTile(getX(), getY() - 2,
    						getPlane()), 2260, 41, 0, 41, 35, 30, 0);
    				final Player target = this;
    				WorldTasksManager.schedule(new WorldTask() {
    					@Override
    					public void run() {
    						setNextGraphics(new Graphics(2259));
    
    						if (isAtMultiArea()) {
    							for (int regionId : getMapRegionsIds()) {
    								List<Integer> playersIndexes = World.getRegion(
    										regionId).getPlayerIndexes();
    								if (playersIndexes != null) {
    									for (int playerIndex : playersIndexes) {
    										Player player = World.getPlayers().get(
    												playerIndex);
    										if (player == null
    												|| !player.hasStarted()
    												|| player.isDead()
    												|| player.hasFinished()
    												|| !player.isCanPvp()
    												|| !player.withinDistance(
    														target, 2)
    														|| !target
    														.getControlerManager()
    														.canHit(player))
    											continue;
    										player.applyHit(new Hit(
    												target,
    												Utils.getRandom((skills
    														.getLevelForXp(Skills.PRAYER) * 3)),
    														HitLook.REGULAR_DAMAGE));
    									}
    								}
    								List<Integer> npcsIndexes = World.getRegion(
    										regionId).getNPCsIndexes();
    								if (npcsIndexes != null) {
    									for (int npcIndex : npcsIndexes) {
    										NPC npc = World.getNPCs().get(npcIndex);
    										if (npc == null
    												|| npc.isDead()
    												|| npc.hasFinished()
    												|| !npc.withinDistance(target,
    														2)
    														|| !npc.getDefinitions()
    														.hasAttackOption()
    														|| !target
    														.getControlerManager()
    														.canHit(npc))
    											continue;
    										npc.applyHit(new Hit(
    												target,
    												Utils.getRandom((skills
    														.getLevelForXp(Skills.PRAYER) * 3)),
    														HitLook.REGULAR_DAMAGE));
    									}
    								}
    							}
    						} else {
    							if (source != null && source != target
    									&& !source.isDead()
    									&& !source.hasFinished()
    									&& source.withinDistance(target, 2))
    								source.applyHit(new Hit(
    										target,
    										Utils.getRandom((skills
    												.getLevelForXp(Skills.PRAYER) * 3)),
    												HitLook.REGULAR_DAMAGE));
    						}
    
    						World.sendGraphics(target, new Graphics(2260),
    								new WorldTile(getX() + 2, getY() + 2,
    										getPlane()));
    						World.sendGraphics(target, new Graphics(2260),
    								new WorldTile(getX() + 2, getY(), getPlane()));
    						World.sendGraphics(target, new Graphics(2260),
    								new WorldTile(getX() + 2, getY() - 2,
    										getPlane()));
    
    						World.sendGraphics(target, new Graphics(2260),
    								new WorldTile(getX() - 2, getY() + 2,
    										getPlane()));
    						World.sendGraphics(target, new Graphics(2260),
    								new WorldTile(getX() - 2, getY(), getPlane()));
    						World.sendGraphics(target, new Graphics(2260),
    								new WorldTile(getX() - 2, getY() - 2,
    										getPlane()));
    
    						World.sendGraphics(target, new Graphics(2260),
    								new WorldTile(getX(), getY() + 2, getPlane()));
    						World.sendGraphics(target, new Graphics(2260),
    								new WorldTile(getX(), getY() - 2, getPlane()));
    
    						World.sendGraphics(target, new Graphics(2260),
    								new WorldTile(getX() + 1, getY() + 1,
    										getPlane()));
    						World.sendGraphics(target, new Graphics(2260),
    								new WorldTile(getX() + 1, getY() - 1,
    										getPlane()));
    						World.sendGraphics(target, new Graphics(2260),
    								new WorldTile(getX() - 1, getY() + 1,
    										getPlane()));
    						World.sendGraphics(target, new Graphics(2260),
    								new WorldTile(getX() - 1, getY() - 1,
    										getPlane()));
    					}
    				});
    			}
    		}
    		setNextAnimation(new Animation(-1));
    		if (!controlerManager.sendDeath())
    		    return;
    		lock(7);
    		stopAll();
    		if (familiar != null)
    		    familiar.sendDeath(this);
    		final WorldTile deathTile = new WorldTile(this);
    		WorldTasksManager.schedule(new WorldTask() {
    		    int loop;
    
    		    @Override
    		    public void run() {
    			if (loop == 0) {
    			    setNextAnimation(new Animation(836));
    			} else if (loop == 1) {
    				getPackets().sendGameMessage("Oh dear, you have died.");
    					if (source instanceof Player) {
    					Player killer = (Player) source;
    					killer.setAttackedByDelay(4);
    			    }
    			} else if (loop == 3) {
    			    controlerManager.startControler("DeathEvent", deathTile, hasSkull());
    			} else if (loop == 4) {
    				killstreak = 0;
    			    getPackets().sendMusicEffect(90);
    			    stop();
    			}
    			loop++;
    		    }
    		}, 0, 1);
    	    }
    Reply With Quote  
     

  5. Thankful user:


  6. #5  
    Donator


    Join Date
    Jul 2013
    Posts
    1,233
    Thanks given
    1
    Thanks received
    493
    Rep Power
    0
    Did you do any changes to your death methods and or controller?
    Reply With Quote  
     

  7. #6  
    InvictusPK Developer
    fishboy9449's Avatar
    Join Date
    Jan 2014
    Posts
    413
    Thanks given
    125
    Thanks received
    37
    Rep Power
    13
    There was this "Assassin stuff " in it?
    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: 12
    Last Post: 08-01-2011, 01:12 AM
  2. Small help. about Players dying.
    By Theukpk in forum Help
    Replies: 3
    Last Post: 02-18-2009, 12:15 AM
  3. Getting Nulls help Repp++
    By massacre215 in forum Help
    Replies: 2
    Last Post: 02-02-2009, 08:58 PM
  4. Players Dying
    By PrePay in forum Requests
    Replies: 4
    Last Post: 10-18-2008, 07:01 PM
  5. Replies: 4
    Last Post: 02-27-2008, 07:38 AM
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •