• TibiaFace

    Tibiaface | Una comunidad Open Tibia donde encontras : mapas, scripts, Otserver, npc y amigos etc ...

    .
    demo menumenu

    Afiliados



    Votar:

    [Sistema] mounts en protection zone

    Compartir:

    Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje (Página 1 de 1.)

    1default [Sistema] mounts en protection zone el Miér Ago 16, 2017 12:45 pm

    Hola amigos de tibiaface, quisiera saber como puedo hacer que las mounts esten en pz. Uso otxserver tfs 1.3 version del server es 10.98. creo que son en las sources pero nose que linea se edita eso de las mounts.

    alguien me ayuda porfa ? Smile

    Ver perfil de usuario

    2default Re: [Sistema] mounts en protection zone el Miér Ago 16, 2017 1:05 pm

    Buscas en tus sources el archivo -> Player.cpp
    y buscas esto
    Código:
    void Player::onChangeZone(ZoneType_t zone)
    {
       if (zone == ZONE_PROTECTION) {
          if (attackedCreature && !hasFlag(PlayerFlag_IgnoreProtectionZone)) {
             setAttackedCreature(nullptr);
             onAttackedCreatureDisappear(false);
          }

          if (!group->access && isMounted()) {
             dismount();
             g_game.internalCreatureChangeOutfit(this, defaultOutfit);
             wasMounted = true;
          }
       } else {
          if (wasMounted) {
             toggleMount(true);
             wasMounted = false;
          }
       }

       g_game.updateCreatureWalkthrough(this);
       sendIcons();
    }
    Remplazas ese void por este:
    Código:
    void Player::onChangeZone(ZoneType_t zone)
    {
       if (zone == ZONE_PROTECTION) {
          if (attackedCreature && !hasFlag(PlayerFlag_IgnoreProtectionZone)) {
             setAttackedCreature(nullptr);
             onAttackedCreatureDisappear(false);
          }

          if (!group->access && isMounted()) {
                        // No modicar mount
             wasMounted = true;
          }
       } else {
          if (wasMounted) {
             toggleMount(true);
             wasMounted = false;
          }
       }

       g_game.updateCreatureWalkthrough(this);
       sendIcons();
    }
    Guardas y compilas tu sevidor
    saludos si te sirve, no olvides regalarme un Like ya que eso me inspira seguir ayudandolos...



    Si necesitas hospedaje para tu servidor usa este enlace y mira las buenos planes de Windows y Linux:

    SevuOT Online, Version:10 and Custom.

    Ver perfil de usuario

    3default Re: [Sistema] mounts en protection zone el Vie Ago 18, 2017 3:25 pm

    sirve pero tengo que salir de pz para que la mount pueda entrar al pz.  Donde puedo habilitar donde los players puedan cambiarse de mount en el templo sin necesidad de salir de pz ?.

    Ver perfil de usuario

    4default Re: [Sistema] mounts en protection zone el Vie Ago 18, 2017 7:45 pm

    Hola amigo, te vas a tu player.cpp y buscas esto:
    Código:

    bool Player::toggleMount(bool mount)
    {
       if ((OTSYS_TIME() - lastToggleMount) < 3000 && !wasMounted) {
          sendCancelMessage(RETURNVALUE_YOUAREEXHAUSTED);
          return false;
       }

       if (mount) {
          if (isMounted()) {
             return false;
          }

          if (!group->access && tile->hasFlag(TILESTATE_PROTECTIONZONE)) {
             sendCancelMessage(RETURNVALUE_ACTIONNOTPERMITTEDINPROTECTIONZONE);
             return false;
          }

          const Outfit* playerOutfit = Outfits::getInstance().getOutfitByLookType(getSex(), defaultOutfit.lookType);
          if (!playerOutfit) {
             return false;
          }

          uint8_t currentMountId = getCurrentMount();
          if (currentMountId == 0) {
             sendOutfitWindow();
             return false;
          }

          Mount* currentMount = g_game.mounts.getMountByID(currentMountId);
          if (!currentMount) {
             return false;
          }

          if (!hasMount(currentMount)) {
             setCurrentMount(0);
             sendOutfitWindow();
             return false;
          }

          if (currentMount->premium && !isPremium()) {
             sendCancelMessage(RETURNVALUE_YOUNEEDPREMIUMACCOUNT);
             return false;
          }

          if (hasCondition(CONDITION_OUTFIT)) {
             sendCancelMessage(RETURNVALUE_NOTPOSSIBLE);
             return false;
          }

          defaultOutfit.lookMount = currentMount->clientId;

          if (currentMount->speed != 0) {
             g_game.changeSpeed(this, currentMount->speed);
          }
       } else {
          if (!isMounted()) {
             return false;
          }

          dismount();
       }

       g_game.internalCreatureChangeOutfit(this, defaultOutfit);
       lastToggleMount = OTSYS_TIME();
       return true;
    }

    luego eliminas este pedazo del codigo:
    Código:

    if (!group->access && tile->hasFlag(TILESTATE_PROTECTIONZONE)) {
             sendCancelMessage(RETURNVALUE_ACTIONNOTPERMITTEDINPROTECTIONZONE);
             return false;
          }

    y guardas, compilas y ya! si te sirvio like porfavor.



    Si necesitas hospedaje para tu servidor usa este enlace y mira las buenos planes de Windows y Linux:

    SevuOT Online, Version:10 and Custom.

    Ver perfil de usuario

    5default Re: [Sistema] mounts en protection zone el Sáb Ago 19, 2017 9:43 am

    Espero te aya funcionado we xD



    Si necesitas hospedaje para tu servidor usa este enlace y mira las buenos planes de Windows y Linux:

    SevuOT Online, Version:10 and Custom.

    Ver perfil de usuario

    6default Re: [Sistema] mounts en protection zone el Mar Ago 22, 2017 10:44 pm

    perdon si tarde en responder jaja. MUCHAS GRACIAS!! Smile

    SI ME SIRVIO Smile

    Ver perfil de usuario

    7default Re: [Sistema] mounts en protection zone el Sáb Abr 28, 2018 10:25 am

    Landfear

    avatar
    Nuevo Miembro
    Nuevo Miembro
    Una vez más, Gracias por tus buenísimos aportes [Tienes que estar registrado y conectado para ver este vínculo] +rp

    Ver perfil de usuario

    Contenido patrocinado


    Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje (Página 1 de 1.)

    Permisos de este foro:
    No puedes responder a temas en este foro.

     

    BienvenidosTibiaFace es una comunidad de Open Tibia. Para participar debes estar registrado (click para Regístrate).