Package l2p.gameserver.model

Examples of l2p.gameserver.model.Reflection


    L2NpcInstance actor = getActor();
    if(actor == null)
    {
      return;
    }
    Reflection ref = actor.getReflection();
    // Открываем дверь, спауним тиата
    if(checkAllDestroyed(actor.getNpcId(), ref.getId()))
    {
      ref.openDoor(DOOR);
      spawnTiat();
      // Показываем заставку спауна Тиата
      for(L2Player pl : L2World.getAroundPlayers(actor))
      {
        if(pl != null)
View Full Code Here


      if(player.isCursedWeaponEquipped())
      {
        player.sendPacket(new SystemMessage(SystemMessage.C1S_QUEST_REQUIREMENT_IS_NOT_SUFFICIENT_AND_CANNOT_BE_ENTERED).addName(player));
        return;
      }
      Reflection old_ref = player.getParty().getReflection();
      if(old_ref != null)
      {
        if(!iz.equals(old_ref.getInstancedZone()))
        {
          player.sendMessage("Your party is in instanced zone already.");
          return;
        }
        if(!Config.ALT_KAMALOKA_LIMITS.equalsIgnoreCase("Leader") && izm.getTimeToNextEnterInstance(name, player) > 0)
        {
          player.sendPacket(new SystemMessage(SystemMessage.C1_MAY_NOT_RE_ENTER_YET).addName(player));
          return;
        }
        if(player.getLevel() < min_level || player.getLevel() > max_level)
        {
          player.sendPacket(new SystemMessage(SystemMessage.C1S_LEVEL_REQUIREMENT_IS_NOT_SUFFICIENT_AND_CANNOT_BE_ENTERED).addName(player));
          return;
        }
        player.teleToLocation(old_ref.getTeleportLoc(), old_ref.getId());
        if(dispellBuffs)
        {
          for(L2Effect e : player.getEffectList().getAllEffects())
          {
            if(!e.getSkill().isOffensive() && !e.getSkill().getName().startsWith("Adventurer's "))
            {
              e.exit();
            }
          }
          if(player.getPet() != null)
          {
            for(L2Effect e : player.getPet().getEffectList().getAllEffects())
            {
              if(!e.getSkill().isOffensive() && !e.getSkill().getName().startsWith("Adventurer's "))
              {
                e.exit();
              }
            }
          }
        }
        return;
      }
    }
    if(!player.getParty().isLeader(player))
    {
      player.sendPacket(Msg.ONLY_A_PARTY_LEADER_CAN_TRY_TO_ENTER);
      return;
    }
    if(player.getParty().getMemberCount() > maxParty)
    {
      player.sendPacket(Msg.YOU_CANNOT_ENTER_DUE_TO_THE_PARTY_HAVING_EXCEEDED_THE_LIMIT);
      return;
    }
    for(L2Player member : player.getParty().getPartyMembers())
    {
      if(member.getLevel() < min_level || member.getLevel() > max_level)
      {
        SystemMessage sm = new SystemMessage(SystemMessage.C1S_LEVEL_REQUIREMENT_IS_NOT_SUFFICIENT_AND_CANNOT_BE_ENTERED).addName(member);
        member.sendPacket(sm);
        player.sendPacket(sm);
        return;
      }
      if(!player.isInRange(member, 500))
      {
        member.sendPacket(Msg.ITS_TOO_FAR_FROM_THE_NPC_TO_WORK);
        player.sendPacket(Msg.ITS_TOO_FAR_FROM_THE_NPC_TO_WORK);
        return;
      }
    }
    if(Config.ALT_KAMALOKA_LIMITS.equalsIgnoreCase("Leader"))
    {
      if(izm.getTimeToNextEnterInstance(name, player) > 0)
      {
        player.sendPacket(new SystemMessage(SystemMessage.C1_MAY_NOT_RE_ENTER_YET).addName(player));
        return;
      }
    }
    else
    {
      for(L2Player member : player.getParty().getPartyMembers())
      {
        if(izm.getTimeToNextEnterInstance(name, member) > 0)
        {
          player.sendPacket(new SystemMessage(SystemMessage.C1_MAY_NOT_RE_ENTER_YET).addName(member));
          return;
        }
      }
    }
    Reflection r = new Reflection(iz);
    r.setInstancedZoneId(instancedZoneId);
    for(InstancedZone i : izs.values())
    {
      if(r.getReturnLoc() == null)
      {
        r.setReturnLoc(i.getReturnCoords());
      }
      if(r.getTeleportLoc() == null)
      {
        r.setTeleportLoc(i.getTeleportCoords());
      }
      r.FillSpawns(i.getSpawnsInfo());
      r.FillDoors(i.getDoors());
    }
    if(minParty <= 1) // для соло инстансов без босса флаг ставится при входе
    {
      player.setVar(name, String.valueOf(System.currentTimeMillis()));
    }
    for(L2Player member : player.getParty().getPartyMembers())
    {
      if(dispellBuffs)
      {
        for(L2Effect e : member.getEffectList().getAllEffects())
        {
          if(!e.getSkill().isOffensive() && !e.getSkill().getName().startsWith("Adventurer's "))
          {
            e.exit();
          }
        }
        if(member.getPet() != null)
        {
          for(L2Effect e : member.getPet().getEffectList().getAllEffects())
          {
            if(!e.getSkill().isOffensive() && !e.getSkill().getName().startsWith("Adventurer's "))
            {
              e.exit();
            }
          }
        }
      }
      member.setVar("backCoords", r.getReturnLoc().toXYZString());
      member.teleToLocation(iz.getTeleportCoords(), r.getId());
    }
    player.getParty().setReflection(r);
    r.setParty(player.getParty());
    if(timelimit > 0)
    {
      r.startCollapseTimer(timelimit * 60 * 1000L);
      player.getParty().broadcastToPartyMembers(new SystemMessage(SystemMessage.THIS_DUNGEON_WILL_EXPIRE_IN_S1_MINUTES).addNumber(timelimit));
    }
  }
View Full Code Here

    if(player.isCursedWeaponEquipped())
    {
      player.sendPacket(new SystemMessage(SystemMessage.C1S_QUEST_REQUIREMENT_IS_NOT_SUFFICIENT_AND_CANNOT_BE_ENTERED).addName(player));
      return;
    }
    Reflection r = ReflectionTable.SOD_REFLECTION_ID == 0 ? null : ReflectionTable.getInstance().get(ReflectionTable.SOD_REFLECTION_ID);
    if(ReflectionTable.SOD_REFLECTION_ID > 0 && r != null)
    {
      player.setVar("backCoords", r.getReturnLoc().toXYZString());
      player.teleToLocation(r.getTeleportLoc(), r.getId());
      return;
    }
    else
    {
      r = new Reflection(iz.getName());
      r.setInstancedZoneId(instancedZoneId);
      ReflectionTable.SOD_REFLECTION_ID = r.getId();
    }
    long timelimit = 0;
    if(instancedZoneId == 400)
    {
      timelimit = ServerVariables.getLong("SoD_opened", 0) * 1000L + SOD_OPEN_TIME - System.currentTimeMillis();
    }
    for(InstancedZone i : izs.values())
    {
      if(r.getTeleportLoc() == null)
      {
        r.setTeleportLoc(i.getTeleportCoords());
      }
      r.FillSpawns(i.getSpawnsInfo());
      r.FillDoors(i.getDoors());
    }
    r.setCoreLoc(r.getReturnLoc());
    r.setReturnLoc(player.getLoc());
    player.setVar("backCoords", r.getReturnLoc().toXYZString());
    player.teleToLocation(r.getTeleportLoc(), r.getId());
    if(timelimit > 0)
    {
      r.startCollapseTimer(timelimit);
    }
  }
View Full Code Here

      {
        cc.broadcastToChannelMembers(new SystemMessage(SystemMessage.C1_MAY_NOT_RE_ENTER_YET).addName(member));
        return;
      }
    }
    Reflection r = new Reflection(name);
    r.setInstancedZoneId(instancedZoneId);
    for(InstancedZone i : izs.values())
    {
      if(r.getTeleportLoc() == null)
      {
        r.setTeleportLoc(i.getTeleportCoords());
      }
      r.FillSpawns(i.getSpawnsInfo());
      r.FillDoors(i.getDoors());
    }
    r.setCoreLoc(r.getReturnLoc());
    r.setReturnLoc(player.getLoc());
    for(L2Player member : cc.getMembers())
    {
      member.setVar(name, String.valueOf(System.currentTimeMillis()));
      member.setVar("backCoords", r.getReturnLoc().toXYZString());
      member.teleToLocation(iz.getTeleportCoords(), r.getId());
    }
    cc.setReflection(r);
    r.setCommandChannel(cc);
    if(timelimit > 0)
    {
      r.startCollapseTimer(timelimit * 60 * 1000L);
    }
  }
 
View Full Code Here

      if(player.isCursedWeaponEquipped())
      {
        player.sendPacket(new SystemMessage(SystemMessage.C1S_QUEST_REQUIREMENT_IS_NOT_SUFFICIENT_AND_CANNOT_BE_ENTERED).addName(player));
        return;
      }
      Reflection old_ref = player.getParty().getReflection();
      if(old_ref != null && old_ref instanceof DelusionChamber)
      {
        if((type == 11 || type == 12) && InstancedZoneManager.getInstance().getTimeToNextEnterInstance(DelusionChamber.getNameById(type), player) > 0)
        {
          player.sendPacket(new SystemMessage(SystemMessage.C1_MAY_NOT_RE_ENTER_YET).addName(player));
          return;
        }
        player.teleToLocation(old_ref.getTeleportLoc(), old_ref.getId());
        return;
      }
    }
    if(!player.getParty().isLeader(player))
    {
View Full Code Here

    L2NpcInstance actor = getActor();
    if(actor == null)
    {
      return;
    }
    Reflection r = actor.getReflection();
    for(L2Player pl : r.getPlayers())
    {
      if(pl != null && Functions.getItemCount(pl, 13846) >= 4)
      {
        actor.decayMe();
      }
View Full Code Here

    L2NpcInstance actor = getActor();
    if(actor == null)
    {
      return;
    }
    Reflection r = actor.getReflection();
    for(L2Player pl : r.getPlayers())
    {
      if(pl != null && Functions.getItemCount(pl, 13846) >= 4)
      {
        actor.decayMe();
      }
View Full Code Here

          player.sendPacket(Msg.ITS_TOO_FAR_FROM_THE_NPC_TO_WORK);
          return;
        }
      }
    }
    Reflection r = new Reflection(name);
    r.setInstancedZoneId(instancedZoneId);
    for(InstancedZone i : ils.values())
    {
      if(r.getReturnLoc() == null)
      {
        r.setReturnLoc(i.getReturnCoords());
      }
      if(r.getTeleportLoc() == null)
      {
        r.setTeleportLoc(i.getTeleportCoords());
      }
      r.FillSpawns(i.getSpawnsInfo());
      r.FillDoors(i.getDoors());
    }
    World world = new World();
    world.instanceId = r.getId();
    worlds.put(r.getId(), world);
    for(L2Player member : player.getParty().getPartyMembers())
    {
      npc.makeSupportMagic(player);
      if(member != player)
      {
        newQuestState(member, STARTED);
      }
      member.setReflection(r);
      member.teleToLocation(il.getTeleportCoords());
      member.setVar("backCoords", r.getReturnLoc().toXYZString());
      member.setVar(name, String.valueOf(System.currentTimeMillis()));
    }
    player.getParty().setReflection(r);
    r.setParty(player.getParty());
    r.startCollapseTimer(timelimit * 60 * 1000L);
    player.getParty().broadcastToPartyMembers(new SystemMessage(SystemMessage.THIS_DUNGEON_WILL_EXPIRE_IN_S1_MINUTES).addNumber(timelimit));
  }
View Full Code Here

      L2NpcInstance actor = getActor();
      if(actor == null || actor.isDead())
      {
        return;
      }
      Reflection r = actor.getReflection();
      L2MonsterInstance mob = new L2MonsterInstance(IdFactory.getInstance().getNextId(), NpcTable.getTemplate(_mobId));
      mob.setSpawnedLoc(actor.getLoc());
      mob.setReflection(r);
      mob.onSpawn();
      mob.spawnMe(mob.getSpawnedLoc());
      mob.setRunning();
      mob.getAI().setMaxPursueRange(20000);
      mob.getAI().setGlobalAggro(0);
      // После спауна мобы бегут к тиату или в фортресс, если тиата еще нету
      L2NpcInstance tiat = findTiat(r.getId());
      Location homeLoc;
      if(tiat != null && !tiat.isDead())
      {
        homeLoc = Rnd.coordsRandomize(tiat.getLoc(), 200, 500);
        mob.setSpawnedLoc(homeLoc);
View Full Code Here

      return;
    }
    if(_firstTimeAttacked)
    {
      _firstTimeAttacked = false;
      Reflection r = actor.getReflection();
      for(int i = 0; i < 8; i++)
      {
        for(int mobId : MOBS)
        {
          L2MonsterInstance npc = new L2MonsterInstance(IdFactory.getInstance().getNextId(), NpcTable.getTemplate(mobId));
          npc.setSpawnedLoc(Rnd.coordsRandomize(actor.getLoc(), 400, 1000));
          npc.setReflection(actor.getReflection());
          npc.onSpawn();
          npc.spawnMe(npc.getSpawnedLoc());
          r.addSpawn(npc.getSpawn());
          L2Character randomHated = actor.getRandomHated();
          npc.getAI().notifyEvent(CtrlEvent.EVT_AGGRESSION, randomHated != null ? randomHated : attacker, Rnd.get(1, 100));
        }
      }
    }
View Full Code Here

TOP

Related Classes of l2p.gameserver.model.Reflection

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.