Ir para conteúdo

Featured Replies

Postado
  • Este é um post popular.

Fala galera, hoje vim trazer um script que fiz com dois intuitos:
O primeiro foi de criar umas poções diferentes pra uma classe do meu servidor que seria uma espécie de químico.
O segundo foi de brincar com as conditions e ver oque dava pra fazer de bom usando elas;

O resulto foi isso daqui, um sistema de potions totalmente diferenciadas pra você poder brincar no servidor. (Sugiro clonar um item com a aparencia das potions no seu item editor pra não conflitar com as potions já existentes)

Explicando: São 8 poções diferentes com efeitos totalmente diferentes.
1- dá manashield pra quem não tem e tira de quem tem.
2- explode quando tacada no chão
3- transforma os inimigos em uma galinha!!
4- derrama um ácido no inimigo tirando vida dele
5- te dá 3 segundos de teleport (cliport), aonde vc clicar no mapa vc vai parar (com excessão de casas e lugares inalcançáveis)
6- te deixa totalmente invisivel por 5 segundos (ninguém vai poder te ver, apenas gm's e você mesmo) é semelhante ao invisible do warlord
Edit: Essa função não funciona em players, apenas em monstros. Você fica invisivel pros monstros mas os outros players ainda te veem
7- Pacificação (impede o inimigo de dar ataques básicos por 5 segundos).. extremamente útil quando enfrentando knights.
8- exhaust (deixa o inimigo com exhaust nas magias de ataque por 5 segundos), muito útil contra sorceres.

Se vocês ainda estão lendo significa que vocês se interessaram então pra instalar e brincar com essas belezinhas vc só vai ter que criar um arquivo no actions/scripts chamado attackpot.lua e colocar isso daqui dentro dele:

local teleport = createConditionObject(CONDITION_GAMEMASTER, 3000, false, GAMEMASTER_TELEPORT) -- tempo teleport
local invisible = createConditionObject(CONDITION_GAMEMASTER, 5000, false, GAMEMASTER_INVISIBLE) -- tempo invisivel
local pacified = createConditionObject(CONDITION_PACIFIED, 5000, true) --- tempo pacified
local exhausted = createConditionObject(CONDITION_EXHAUST, 5000, false, EXHAUST_COMBAT) -- tempo exhaust
local manash = createConditionObject(CONDITION_MANASHIELD, 5000, false) -- tempo manashield


local arr = { --- area da explosao
	{0, 1, 0},
	{1, 3, 1},
	{0, 1, 0}
}

local area = createCombatArea(arr)
 
 
 function onUse(cid, item, frompos, itemEx, topos)
 
 ---- A FORMULA DAS POTS DE ATAQUE VEM AQUI-----
 local minin = getPlayerLevel(cid)   --- minimo que vai tirar
 local maxin = 2*(getPlayerLevel(cid)) --- maximo que tira
 ----------------
 
 
			if item.type == 1 then
			 if isPlayer(itemEx.uid) then
			 if getCreatureCondition(itemEx.uid, CONDITION_MANASHIELD) then
					doRemoveCondition(itemEx.uid, CONDITION_MANASHIELD)
					doCreatureSay(itemEx.uid, "MANASHIELD OFF!", TALKTYPE_MONSTER)
					else		
					doAddCondition(itemEx.uid, manash)
					doCreatureSay(itemEx.uid, "MANASHIELD ON!", TALKTYPE_MONSTER)
				end			 
			 doSendMagicEffect(topos, 1) 
			 doRemoveItem(item.uid, 1)
			 else
			 doPlayerSendCancel(cid, "Target must be a player.")
			 end
  
			elseif item.type == 2 then
			 doSendMagicEffect(topos, 4)
			 doAreaCombatHealth(cid, 1, topos, area, -minin, -maxin, 5)
			 doCreatureSay(cid, "BOOOM", TALKTYPE_MONSTER)
			 doRemoveItem(item.uid, 1) 
			 			 
			 elseif item.type == 3 then
			 if isCreature(itemEx.uid) then
			 doSetCreatureOutfit(itemEx.uid, {lookType = 111}, 15000)
			 doSendMagicEffect(topos, 3) 
			 doCreatureSay(itemEx.uid, "kot-kot", TALKTYPE_MONSTER)
			 doRemoveItem(item.uid, 1)
			 else
			 doPlayerSendCancel(cid, "Target must be a creature.")
			 end
			 
			elseif item.type == 4 then
			if itemEx.uid == cid then
			 doPlayerSendCancel(cid, "You can't use this potion on yourself.") return true
			elseif isCreature(itemEx.uid) then
			 doSendMagicEffect(topos, 4) 
			 doTargetCombatHealth(cid, itemEx.uid, 1, -minin, -maxin, 5)
			 doCreatureSay(cid, "SUFFER!!!", TALKTYPE_MONSTER)
			 doCreatureSay(itemEx.uid, "ARRRRGGG", TALKTYPE_MONSTER)
			 doRemoveItem(item.uid, 1)
			 end
			 
		 
			 elseif item.type == 5 then
			 if itemEx.uid == cid then
			 doSendMagicEffect(topos, 4)  
			 doAddCondition(itemEx.uid, teleport)			 
			 doCreatureSay(cid, "Glup..", TALKTYPE_MONSTER)
			 doRemoveItem(item.uid, 1)
			 else
			 doPlayerSendCancel(cid, "This potion can only be used at yourself.")
			 end
			 
			 elseif item.type == 6 then
			 if itemEx.uid == cid then
			 doAddCondition(itemEx.uid, invisible)
			 doSendMagicEffect(topos, 0) 
			 doCreatureSay(cid, "Argh..", TALKTYPE_MONSTER)
			 doRemoveItem(item.uid, 1)
			 else
			 doPlayerSendCancel(cid, "This potion can only be used at yourself.")
			 end
			 
			 elseif item.type == 9 then
			 if isPlayer(itemEx.uid) then
			 doAddCondition(itemEx.uid, pacified)
			 doSendMagicEffect(topos, 7) 
			 doCreatureSay(itemEx.uid, "Peace!", TALKTYPE_MONSTER)
			 doRemoveItem(item.uid, 1)
			 else
			 doPlayerSendCancel(cid, "Target must be a player.")
			 end
			 
			  elseif item.type == 12 then
			 if isPlayer(itemEx.uid) then
			 doAddCondition(itemEx.uid, exhausted)
			 doSendMagicEffect(topos, 32) 
			 doCreatureSay(itemEx.uid, "zZzZzZzZz", TALKTYPE_MONSTER)
			 doRemoveItem(item.uid, 1)
			 else
			 doPlayerSendCancel(cid, "Target must be a player.")
			 end
			 
			 end 
return true
end



Feito isso apenas adicione no seu actions.xml:

<action itemid="2006" script="attackpot.lua" allowfaruse="1"/>

E agora as imagens:
1)
Aplicando e tirando manashield:


Y3uRSyk.png
xo7jVht.png



2)
Explodindo a poção no chão (use with)


FKIu6kg.png



3) Transformando em galinha


wD7Be8m.png



4) Tacando ácido no amiguinho


isd019a.png



5, 6, 7, 8 não dá pra mostrar.. tem que colocar no server e ver.

Como todas as potions partilham o mesmo id (id do vial: 2006) pra criar essas variações você vai usar o type/count. Ou seja, pra criar as poções você vai digitar no god:

/i 2006, 1 
​/i 2006, 2
​/i 2006, 3
.
.
.
​/i 2006, 6
​/i 2006, 9
​/i 2006, 12

As 8 poções são {1,2,3,4,5,6,9,12}. Espero que tenham gostado e façam bom proveito do script!

Editado por xWhiteWolf (veja o histórico de edições)

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

  • Respostas 9
  • Visualizações 2.7k
  • Created
  • Última resposta

Top Posters In This Topic

Postado
  • Autor

nem tão complexo, fiz mais pra brincar com as conditions... as outras pots  que não tem imagem são bem mais legais kkk

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Postado

gostei,funcional e muito boa

reputado!

                                                                         github.png TFS 0.4 DEV                                                                                                       nvzl0l.jpg
 
Página no facebook: https://www.facebook.com/Suporterking                                                                                     
Skype: fabinhodias01
 
 
"A almapermanece em suas criações" 


h3dhnuI.jpg           
(Dou suporte apenas em tópicos..)

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