• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    c++ dolble arma al personaje

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

    1default c++ dolble arma al personaje el Sáb Ene 30, 2016 10:06 am

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    Hola usuarios de tibiaface


    bueno aqui le traigo un codigo c++ que hace este codigo bueno les permite utilizar dos armas osea una en la mano izquierda y otra en la mano derecha siempre y cuando sea de una mano.

    vamos:


    en player.ccp buscamos esta linea:

    Código:
    ret = RET_CANONLYUSEONEWEAPON;

    y la remplazamos por :

    Código:
    ret = RET_NOERROR;

    En weapons.h busque esta linea:

    Código:
    const Weapon* getWeapon(const Item* item) const;

    Abajo coloque esto:

    Código:
    static int32_t getAttackLeft;
           static int32_t getAttackRigth;
           static int32_t getLeftExtraAttack;
           static int32_t getRigthExtraAttack;

    en weapons.ccp busque esta linea:

    Código:
    int32_t WeaponMelee::getWeaponDamage(const Player* player, const Creature* target, const Item* item, bool maxDamage /*= false*/) const
    {
       int32_t attackSkill = player->getWeaponSkill(item);
       int32_t attackValue = std::max((int32_t)0, (int32_t(item->getAttack() + item->getExtraAttack()) - elementDamage));
       float attackFactor = player->getAttackFactor();

    remplaze por esto:

    Código:
    int32_t WeaponMelee::getWeaponDamage(const Player* player, const Creature* target, const Item* item, bool maxDamage /*= false*/) const
    {
          
        int32_t getAttackLeft;
        int32_t getAttackRigth;
        int32_t getLeftExtraAttack;
       int32_t getRigthExtraAttack;
       
        getAttackLeft = 0;
        getAttackRigth = 0;
        getLeftExtraAttack = 0;
       getRigthExtraAttack = 0;
       
        if (getAttackLeft == 0)
        {
            if (player->getInventoryItem(SLOT_LEFT) != NULL)
            {
            getAttackLeft = player->getInventoryItem(SLOT_LEFT)->getAttack();
            getLeftExtraAttack = player->getInventoryItem(SLOT_LEFT)->getExtraAttack();
            }
            else if (player->getInventoryItem(SLOT_LEFT) == NULL)
            {
            getAttackLeft = 0;
            getLeftExtraAttack = 0; 
            }
        } 
       
        if (getAttackRigth == 0)
        {
            if (player->getInventoryItem(SLOT_RIGHT) != NULL)
            {
            getAttackRigth = player->getInventoryItem(SLOT_RIGHT)->getAttack();
            getRigthExtraAttack = player->getInventoryItem(SLOT_RIGHT)->getExtraAttack();
            }
            else if (player->getInventoryItem(SLOT_RIGHT) == NULL)
            {
            getAttackRigth = 0;
            getRigthExtraAttack = 0; 
            }
        }                                               
       
       
        int32_t attackValue = std::max((int32_t)0, (int32_t)((getAttackLeft + getLeftExtraAttack + getAttackRigth + getRigthExtraAttack) - elementDamage));                                             
          
        int32_t attackSkill = player->getWeaponSkill(item);
        float attackFactor = player->getAttackFactor();




    y listo.


    Créditos:Jhon992



    Ver perfil de usuario http://www.tibiaface.com

    2default Re: c++ dolble arma al personaje el Sáb Abr 23, 2016 6:35 pm

    Zer0

    avatar
    Nuevo Miembro
    Nuevo Miembro
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:Hola usuarios de tibiaface


    bueno aqui le traigo un codigo c++ que hace este codigo bueno les permite utilizar dos armas osea una en la mano izquierda y otra en la mano derecha siempre y cuando sea de una mano.

    vamos:


    en player.ccp buscamos esta linea:

    Código:
    ret = RET_CANONLYUSEONEWEAPON;

    y la remplazamos por :

    Código:
    ret = RET_NOERROR;

    En weapons.h busque esta linea:

    Código:
    const Weapon* getWeapon(const Item* item) const;

    Abajo coloque esto:

    Código:
    static int32_t getAttackLeft;
        static int32_t getAttackRigth;
        static int32_t getLeftExtraAttack;
        static int32_t getRigthExtraAttack;

    en weapons.ccp busque esta linea:

    Código:
    int32_t WeaponMelee::getWeaponDamage(const Player* player, const Creature* target, const Item* item, bool maxDamage /*= false*/) const
    {
     int32_t attackSkill = player->getWeaponSkill(item);
     int32_t attackValue = std::max((int32_t)0, (int32_t(item->getAttack() + item->getExtraAttack()) - elementDamage));
     float attackFactor = player->getAttackFactor();

    remplaze por esto:

    Código:
    int32_t WeaponMelee::getWeaponDamage(const Player* player, const Creature* target, const Item* item, bool maxDamage /*= false*/) const
    {
     
        int32_t getAttackLeft;
        int32_t getAttackRigth;
        int32_t getLeftExtraAttack;
     int32_t getRigthExtraAttack;
        
        getAttackLeft = 0;
        getAttackRigth = 0;
        getLeftExtraAttack = 0;
     getRigthExtraAttack = 0;
        
        if (getAttackLeft == 0)
        {
            if (player->getInventoryItem(SLOT_LEFT) != NULL)
            {
            getAttackLeft = player->getInventoryItem(SLOT_LEFT)->getAttack();
            getLeftExtraAttack = player->getInventoryItem(SLOT_LEFT)->getExtraAttack();
            }
            else if (player->getInventoryItem(SLOT_LEFT) == NULL)
            {
            getAttackLeft = 0;
            getLeftExtraAttack = 0;  
            }
        }  
        
        if (getAttackRigth == 0)
        {
            if (player->getInventoryItem(SLOT_RIGHT) != NULL)
            {
            getAttackRigth = player->getInventoryItem(SLOT_RIGHT)->getAttack();
            getRigthExtraAttack = player->getInventoryItem(SLOT_RIGHT)->getExtraAttack();
            }
            else if (player->getInventoryItem(SLOT_RIGHT) == NULL)
            {
            getAttackRigth = 0;
            getRigthExtraAttack = 0;  
            }
        }                                                
        
        
        int32_t attackValue = std::max((int32_t)0, (int32_t)((getAttackLeft + getLeftExtraAttack + getAttackRigth + getRigthExtraAttack) - elementDamage));                                              
        
        int32_t attackSkill = player->getWeaponSkill(item);
        float attackFactor = player->getAttackFactor();




    y listo.


    Créditos:Jhon992


    no hay que compilar al hacer eso? si es asi por favor de poner el tuto de que hay que compilar por favor, me gustaria usar esto como una habilidad para 1 vocacion!.

    Ver perfil de usuario

    3default Re: c++ dolble arma al personaje el Lun Abr 25, 2016 12:20 am

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:Hola usuarios de tibiaface


    bueno aqui le traigo un codigo c++ que hace este codigo bueno les permite utilizar dos armas osea una en la mano izquierda y otra en la mano derecha siempre y cuando sea de una mano.

    vamos:


    en player.ccp buscamos esta linea:

    Código:
    ret = RET_CANONLYUSEONEWEAPON;

    y la remplazamos por :

    Código:
    ret = RET_NOERROR;

    En weapons.h busque esta linea:

    Código:
    const Weapon* getWeapon(const Item* item) const;

    Abajo coloque esto:

    Código:
    static int32_t getAttackLeft;
        static int32_t getAttackRigth;
        static int32_t getLeftExtraAttack;
        static int32_t getRigthExtraAttack;

    en weapons.ccp busque esta linea:

    Código:
    int32_t WeaponMelee::getWeaponDamage(const Player* player, const Creature* target, const Item* item, bool maxDamage /*= false*/) const
    {
     int32_t attackSkill = player->getWeaponSkill(item);
     int32_t attackValue = std::max((int32_t)0, (int32_t(item->getAttack() + item->getExtraAttack()) - elementDamage));
     float attackFactor = player->getAttackFactor();

    remplaze por esto:

    Código:
    int32_t WeaponMelee::getWeaponDamage(const Player* player, const Creature* target, const Item* item, bool maxDamage /*= false*/) const
    {
     
        int32_t getAttackLeft;
        int32_t getAttackRigth;
        int32_t getLeftExtraAttack;
     int32_t getRigthExtraAttack;
        
        getAttackLeft = 0;
        getAttackRigth = 0;
        getLeftExtraAttack = 0;
     getRigthExtraAttack = 0;
        
        if (getAttackLeft == 0)
        {
            if (player->getInventoryItem(SLOT_LEFT) != NULL)
            {
            getAttackLeft = player->getInventoryItem(SLOT_LEFT)->getAttack();
            getLeftExtraAttack = player->getInventoryItem(SLOT_LEFT)->getExtraAttack();
            }
            else if (player->getInventoryItem(SLOT_LEFT) == NULL)
            {
            getAttackLeft = 0;
            getLeftExtraAttack = 0;  
            }
        }  
        
        if (getAttackRigth == 0)
        {
            if (player->getInventoryItem(SLOT_RIGHT) != NULL)
            {
            getAttackRigth = player->getInventoryItem(SLOT_RIGHT)->getAttack();
            getRigthExtraAttack = player->getInventoryItem(SLOT_RIGHT)->getExtraAttack();
            }
            else if (player->getInventoryItem(SLOT_RIGHT) == NULL)
            {
            getAttackRigth = 0;
            getRigthExtraAttack = 0;  
            }
        }                                                
        
        
        int32_t attackValue = std::max((int32_t)0, (int32_t)((getAttackLeft + getLeftExtraAttack + getAttackRigth + getRigthExtraAttack) - elementDamage));                                              
        
        int32_t attackSkill = player->getWeaponSkill(item);
        float attackFactor = player->getAttackFactor();




    y listo.


    Créditos:Jhon992


    no hay que compilar al hacer eso? si es asi por favor de poner el tuto de que hay que compilar por favor, me gustaria usar esto como una habilidad para 1 vocacion!.


    si se tiene que compilar y los tutoriales estan en seccionde tutoriales



    Ver perfil de usuario http://www.tibiaface.com

    4default Re: c++ dolble arma al personaje el Sáb Abr 30, 2016 8:33 am

    gafogafo

    avatar
    Miembro
    Miembro
    maya y como se le haria para que reconosca solo 1 vocation id para usar esta config? seria con una script o algo?

    Ver perfil de usuario

    5default Re: c++ dolble arma al personaje el Sáb Abr 30, 2016 11:14 pm

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:maya y como se le haria para que reconosca solo 1 vocation id para usar esta config? seria con una script o algo?


    no se podria porque esto es global para los weapons tendrias que modificar casi todo en sources para poder realizar lo que quieres seria como crear otros weapons



    Ver perfil de usuario http://www.tibiaface.com

    6default Re: c++ dolble arma al personaje el Sáb Abr 30, 2016 11:42 pm

    gafogafo

    avatar
    Miembro
    Miembro
    si exacto que otras armas sean las que se puedan usar de 2 es posible con esto?

    Ver perfil de usuario

    7default Re: c++ dolble arma al personaje el Lun Mayo 02, 2016 2:56 pm

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    Código:
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:si exacto que otras armas sean las que se puedan usar de 2 es posible con esto?

    obvio que podrias crearlo con esto



    Ver perfil de usuario http://www.tibiaface.com

    8default Re: c++ dolble arma al personaje el Mar Ago 09, 2016 5:40 pm

    jesusaron

    avatar
    Miembro
    Miembro
    oye por ejemplo quiero crear una vocacion que sea tanker y que pueda utilizar 2 shield en cada mano y que sean para esa sola voc los shield se puede ? y si se puede como

    Ver perfil de usuario

    9default Re: c++ dolble arma al personaje el Mar Ago 09, 2016 6:10 pm

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:oye por ejemplo quiero crear una vocacion que sea tanker y que pueda utilizar 2 shield en cada mano y que sean para esa sola voc los shield se puede ? y si se puede como

    pues no tendras que crear modificar otros c++ para lograr lo que buscas mas un programador en c++ podria darte la mano



    Ver perfil de usuario http://www.tibiaface.com

    10default Re: c++ dolble arma al personaje el Vie Mar 17, 2017 1:45 pm

    shorty12

    avatar
    Nuevo Miembro
    Nuevo Miembro
    que TFS usas para compilar?

    Ver perfil de usuario

    11default tfs el Lun Mar 20, 2017 2:40 pm

    jesusaron

    avatar
    Miembro
    Miembro
    tfs 1.o vercion 8.6

    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).