Ir para conteúdo

Featured Replies

Postado

iradooooo, irei usar <3

 

 

Estava eu compilando quando me deparo com esse erro, como foi muitas modificações na source, pensei que tinha errado algo, mas refiz tudo do zero com mais atenção e deu novamente o mesmo erro, estou usando TFS 0.4

 

luascript.cpp: In static member function static int32_t LuaInterface::luaGetPlayerManaAbsorb(lua_State*)’:
luascript.cpp:9488:29: error: class Player has no member named getManaAsborb
   lua_pushnumber(L, player->getManaAsborb());
                             ^
Makefile:40: recipe for target 'obj/luascript.o' failed
make: *** [obj/luascript.o] Error 1

 

Editado por Ackerzin
nao ter que duplicar post (veja o histórico de edições)

       112674.gif

 

 

 

  • Respostas 90
  • Visualizações 15.2k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • @Ackerzin melhor forma de você aplicar em qualquer source é pegar uma função existe na sua source e usar o DiffCheker para comparar os códigos e deixar o do tópico com as mesmas funções e chamadas da

  • Rapaziada, acabei de falar com o @Mathias Kenfi e ele vai ver todos erros, e fazer uma versão 2.0 com para adicionar uma porcentagem no dano, sucesso. Observação, ele falou todos que participaram no t

  • @Mathias Kenfi Achei um "bug" Se você estiver equipado um item com manaAbsorb e usar alguma magia de treinar ml "power down, chakra down " que contenha if getPlayerMana(cid) > 1 then    

Posted Images

Postado

@Ackerzin melhor forma de você aplicar em qualquer source é pegar uma função existe na sua source e usar o DiffCheker para comparar os códigos e deixar o do tópico com as mesmas funções e chamadas da sua source assim é 100% de certeza que não vai dar erro porque muda alguns pequenos detalhes de source para source ai é nisso que gera o erro

Compre seus Scripts Agora totalmente seguro e de forma rápida, aceitamos também encomendas.

discord.gg/phJZeHa2k4

 

Projeto ATS (Naruto)

Informações Abaixo

Facebook

Youtube
Discord

 

Tutoriais / Conteúdos

Clique Aqui

Postado
  • Autor

@Gabrieldsadaxas @leozincorsair O tutorial foi feito a partir da OTX 2.xx séries na qual já existe, por padrão, atributos como dualwield e attackspeed

 

Vocês devem, no entanto, adaptar para a source de vocês.

 

Não tem que colocar especificamente depois de

ATTR_DUALWIELD = 43;

 Vocês devem colocar ele depois do PENÚLTIMO ATTR e antes do ÚLTIMO

 

A mesma coisa no item.cpp em relação ao attackspeed

if(it.attackSpeed || (item && item->getAttackSpeed()))

Se não tem na source vocês podem olhar em uma source que tenha (OTX 2.XX séries de preferência) e ver em qual posição deve ser colocada

 

		else if(it.weaponType != WEAPON_AMMO && it.weaponType != WEAPON_WAND)
		{
			if(it.attack || it.extraAttack || (item && (item->getAttack() || item->getExtraAttack())))
			{
				begin = false;
				s << " (Atk:";
				if(it.hasAbilities() && it.abilities->elementType != COMBAT_NONE)
				{
					s << std::max((int32_t)0, int32_t((item ? item->getAttack() : it.attack) - it.abilities->elementDamage));
					if(it.extraAttack || (item && item->getExtraAttack()))
						s << " " << std::showpos << int32_t(item ? item->getExtraAttack() : it.extraAttack) << std::noshowpos;

					s << " physical + " << it.abilities->elementDamage << " " << getCombatName(it.abilities->elementType);
				}
				else
				{
					s << int32_t(item ? item->getAttack() : it.attack);
					if(it.extraAttack || (item && item->getExtraAttack()))
						s << " " << std::showpos << int32_t(item ? item->getExtraAttack() : it.extraAttack) << std::noshowpos;
				}
			}

			if(it.defense || it.extraDefense || (item && (item->getDefense() || item->getExtraDefense())))
			{
				if(begin)
				{
					begin = false;
					s << " (";
				}
				else
					s << ", ";

				s << "Def:" << int32_t(item ? item->getDefense() : it.defense);
				if(it.extraDefense || (item && item->getExtraDefense()))
					s << " " << std::showpos << int32_t(item ? item->getExtraDefense() : it.extraDefense) << std::noshowpos;
			}
		}

		if(it.attackSpeed || (item && item->getAttackSpeed()))
		{
			if(begin)
			{
				begin = false;
				s << " (";
			}
			else
				s << ", ";

			s << "AS: " << (item ? item->getAttackSpeed() : it.attackSpeed);
		}

Claramente você perecebe que o attackspeed está depois de 

else if(it.weaponType != WEAPON_AMMO && it.weaponType != WEAPON_WAND)
		{
			if(it.attack || it.extraAttack || (item && (item->getAttack() || item->getExtraAttack())))
			{
				begin = false;
				s << " (Atk:";
				if(it.hasAbilities() && it.abilities->elementType != COMBAT_NONE)
				{
					s << std::max((int32_t)0, int32_t((item ? item->getAttack() : it.attack) - it.abilities->elementDamage));
					if(it.extraAttack || (item && item->getExtraAttack()))
						s << " " << std::showpos << int32_t(item ? item->getExtraAttack() : it.extraAttack) << std::noshowpos;

					s << " physical + " << it.abilities->elementDamage << " " << getCombatName(it.abilities->elementType);
				}
				else
				{
					s << int32_t(item ? item->getAttack() : it.attack);
					if(it.extraAttack || (item && item->getExtraAttack()))
						s << " " << std::showpos << int32_t(item ? item->getExtraAttack() : it.extraAttack) << std::noshowpos;
				}
			}

			if(it.defense || it.extraDefense || (item && (item->getDefense() || item->getExtraDefense())))
			{
				if(begin)
				{
					begin = false;
					s << " (";
				}
				else
					s << ", ";

				s << "Def:" << int32_t(item ? item->getDefense() : it.defense);
				if(it.extraDefense || (item && item->getExtraDefense()))
					s << " " << std::showpos << int32_t(item ? item->getExtraDefense() : it.extraDefense) << std::noshowpos;
			}
		}

Então se não tiver esse atributo na sua source é só adicionar depois do código citado acima

Postado
1 hora atrás, LeoTK disse:

@Ackerzin melhor forma de você aplicar em qualquer source é pegar uma função existe na sua source e usar o DiffCheker para comparar os códigos e deixar o do tópico com as mesmas funções e chamadas da sua source assim é 100% de certeza que não vai dar erro porque muda alguns pequenos detalhes de source para source ai é nisso que gera o erro

 

Não entendi como posso usar isso ai, poderia me mostrar como fazer?

       112674.gif

 

 

 

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo