Ir para conteúdo

Featured Replies

Postado

Bom Dia, Alguem consegue fazer um script que quando o player da "guild1" pisar naquele piso (com actionid) ele e os membros da guild dele "guild1" recebe uma storage e todos que tiver essa storage recebe 20% de EXP Bonus, se outro player de outra guild, "guild2" pisar nesse msm piso essa mesma storage que estava com a "guild1" passa a ser da "guild2" e o bonus de 20% passa a ser da "Guild2" e nao da "guild1", Obrigado.

Resolvido por Lyu

Ir para solução
  • Respostas 7
  • Visualizações 1.2k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Tente isso, fiz aqui rapidinho mas não testei (acredito que funcione como você espera)   data/movements/scripts/guildexp.lua if not guildExperienceBonus then guildExperienceBonus = 0 -- de

Postado
  Em 16/10/2019 em 15:15, Avante disse:

Bom Dia, Alguem consegue fazer um script que quando o player da "guild1" pisar naquele piso (com actionid) ele e os membros da guild dele "guild1" recebe uma storage e todos que tiver essa storage recebe 20% de EXP Bonus, se outro player de outra guild, "guild2" pisar nesse msm piso essa mesma storage que estava com a "guild1" passa a ser da "guild2" e o bonus de 20% passa a ser da "Guild2" e nao da "guild1", Obrigado.

 

Tenta fazer usando globalstorage que recebe o id da guild do player que passar pelo piso sendo assim mais fácil você dar essa bônus exp 

  • 2 weeks later...
Postado
  • Solução

Tente isso, fiz aqui rapidinho mas não testei (acredito que funcione como você espera)
 

data/movements/scripts/guildexp.lua

if not guildExperienceBonus then
	guildExperienceBonus = 0 -- default value; no guild
end

function onStepIn(creature, item, position, fromPosition)
	local player = creature:getPlayer()
	if not player then
		return true
	end

	local guild = player:getGuild()
	if guild then
		guildExperienceBonus = guild:getId()
		player:sendTextMessage(MESSAGE_INFO_DESCR, 'Sua guild agora possui o bônus em experiência.')
		player:getPosition():sendMagicEffect(CONST_ME_MAGIC_GREEN)
	end
	return true
end

data/movements/movements.xml

<movevent event="StepIn" actionid="33462" script="guildexp.lua" />

data/events/scripts/player.lua

--[[
	Atenção, procure a função Player:onGainExperience(source, exp, rawExp)
	Adicione o código abaixo antes do último return exp
]]

local guild = self:getGuild()
if guild and guild:getId() == guildExperienceBonus then
  exp = exp * 1.2 -- 20% bonus
end

 

Editado por Lyu
troquei player por self (veja o histórico de edições)

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

Informação Importante

Confirmação de Termo