Postado Maio 30, 2018 6 anos Me Desculpa Reviver o Tópico , Mais queria Entender Umas Coisas... A Diferença Disso Spoiler uint32_t Player::getAttackSpeed() { Item* weapon = getWeapon(); if(weapon && weapon->getAttackSpeed() != 0) return weapon->getAttackSpeed(); return vocation->getAttackSpeed(); } Pra Isso Spoiler uint32_t Player::getAttackSpeed() const { int32_t SpeedAttack; SpeedAttack = vocation->getAttackSpeed() - (getSkill(SKILL_FIST, SKILL_LEVEL) * 10); if (SpeedAttack < 500) { return 500; } else { return (uint32_t) SpeedAttack; } } Sei Que Pode Ser Uma Pergunta Besta ,Mais Queria Entender Mais Sobre C++ ...
Postado Maio 30, 2018 6 anos 33 minutos atrás, Aminius Averum disse: Me Desculpa Reviver o Tópico , Mais queria Entender Umas Coisas... A Diferença Disso Ocultar conteúdo uint32_t Player::getAttackSpeed() { Item* weapon = getWeapon(); if(weapon && weapon->getAttackSpeed() != 0) return weapon->getAttackSpeed(); return vocation->getAttackSpeed(); } Pra Isso Ocultar conteúdo uint32_t Player::getAttackSpeed() const { int32_t SpeedAttack; SpeedAttack = vocation->getAttackSpeed() - (getSkill(SKILL_FIST, SKILL_LEVEL) * 10); if (SpeedAttack < 500) { return 500; } else { return (uint32_t) SpeedAttack; } } Sei Que Pode Ser Uma Pergunta Besta ,Mais Queria Entender Mais Sobre C++ ... a diferencia é que o primeiro não soma as skill do fist .. ele só conta o attackspeed do vocation xml . ou seja se estiver com 100 de fist não vai ver diferencia . somente com o segundo .
Postado Maio 30, 2018 6 anos 33 minutos atrás, Baiak Furion disse: a diferencia é que o primeiro não soma as skill do fist .. ele só conta o attackspeed do vocation xml . ou seja se estiver com 100 de fist não vai ver diferencia . somente com o segundo . Isso eu entendi , eu queria saber sobre o codigo em si ... skksks Editado Maio 30, 2018 6 anos por Aminius Averum (veja o histórico de edições)
Postado Junho 13, 2018 6 anos o meu da esse erro na ora de compilar player.cpp: In member function ‘uint32_t Player::getAttackSpeed() const’: player.cpp:4715:160: error: ‘modifiers’ was not declared in this scope return (((_weapon && _weapon->getAttackSpeed() != 0) ? _weapon->getAttackSpeed() : (vocation->getAttackSpeed() / std::max((size_t)1, getWeapons().size()))) + modifiers); ^ Makefile:40: recipe for target 'obj/player.o' failed make: *** [obj/player.o] Error 1 uint32_t Player::getAttackSpeed() const { int32_t SpeedAttack; SpeedAttack = vocation->getAttackSpeed() - (getSkill(SKILL_FIST, SKILL_LEVEL) * 10); if (SpeedAttack < 500) { return 500; } else { return (uint32_t) SpeedAttack; } Item* _weapon = weapon; if(!weapon || weapon->getWeaponType() == WEAPON_AMMO) _weapon = const_cast<Player*>(this)->getWeapon(true); return (((_weapon && _weapon->getAttackSpeed() != 0) ? _weapon->getAttackSpeed() : (vocation->getAttackSpeed() / std::max((size_t)1, getWeapons().size()))) + modifiers); }
Postado Fevereiro 13, 2023 2 anos Em 03/03/2015 em 13:09, Emersonssss disse: Salve Galera, olhando em minhas libs achei um script muito bom !! Em alguns servidores derivados o Skill Fist Fighting influencia no Attack Speed do Player, Então .... Segue a Formula na source que faz essa magica : Em Player.cpp Procure : uint32_t Player::getAttackSpeed() const Mude Atualize para esse função : uint32_t Player::getAttackSpeed() const { int32_t SpeedAttack; SpeedAttack = vocation->getAttackSpeed() - (getSkill(SKILL_FIST, SKILL_LEVEL) * 10); if (SpeedAttack < 500) { return 500; } else { return (uint32_t) SpeedAttack; } } Explicando : Ele irá verifica o Attack Speed padrão no Vocations.xml e irá verifica o Skill Fist do Player e retornará a velocidade, caso a velocidade retorne menor que 500 ele sempre limitará a 500ms para que não haja erros. Simples e Facil ! Creditos ? Emerson Henrique pega tfs 0.4?
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.