Ir para conteúdo
Entre para seguir isso  
MaXwEllDeN

Monstro Ladrão

Recommended Posts

MaXwEllDeN    13
MaXwEllDeN

Versão testada : TFS 0.3.6

Autor: MaX_Assins50x47.png Maxwell Denisson(MaXwEllDeN)

Informação adicional: Monster+Creaturescript.

 

jjoCzg.gif

Versão 1

(Quando Mata o player ele perde x porcento aleatorio de dinheiro do player, e quando o monstro morre, ele dropa todo dinheiro que ele roubou de todos os players que tentaram matar ele.)

 

[spoiler=Mostrar Versão 1]

#Instalação:

 

@Monster

Na pasta data/monster

copie qualquer arquivo com a extenção .xml renomeie ele para Robber.xml, abra ele, delete tudo que tiver dentro, copie e cole esse código dentro dele:

 

<?xml version="1.0" encoding="UTF-8"?>
<monster name="Robber" nameDescription="a robber" race="blood" experience="3060" speed="280" manacost="0">
 <health now="1235" max="1235"/>
 <look type="335" head="79" body="95" legs="95" feet="81" corpse="6080"/>
 <targetchange interval="5000" chance="8"/>
 <strategy attack="100" defense="0"/>
 <flags>
   <flag attackable="1"/>
   <flag hostile="1"/>
   <flag illusionable="1"/>
   <flag pushable="0"/>
   <flag canpushitems="1"/>
   <flag canpushcreatures="0"/>
   <flag staticattack="90"/>
 </flags>
 <attacks>
   <attack name="melee" interval="2000" skill="90" attack="80"/>
<attack name="physical" interval="2000" chance="20" range="7" radius="3" target="0" min="-350" max="-455">
 <attribute key="areaEffect" value="blackspark"/>
</attack>
 </attacks>
 <defenses armor="11" defense="15"/>
<elements>
   <element holyPercent="-10"/>
   <element firePercent="-10"/>
   <element energyPercent="-10"/>
   <element icePercent="-10"/>
   <element earthPercent="-10"/>
   <element deathPercent="+1"/>
</elements>
 <immunities>
   <immunity physical="0"/>
   <immunity energy="0"/>
   <immunity fire="0"/>
   <immunity poison="0"/>
   <immunity lifedrain="0"/>
   <immunity paralyze="0"/>
   <immunity outfit="0"/>
   <immunity drunk="0"/>
   <immunity invisible="0"/>
 </immunities>
 <voices interval="5000" chance="10">
   <voice sentence="Passa a grana mermão!"/>
   <voice sentence="Num tenho medo nem do B.O.P.E."/>
 </voices>
 <loot>
   <item id="2148" countmax="23" chance1="65000" chancemax="0"/> --Gold
   <item id="2468" chance="19000"/> --Studded LEgs
   <item id="2666" countmax="2" chance1="33333"/> --MEat
   <item id="2389" chance="11500"/> --Mace
   <item id="1987" chance="100000">
     <inside>
       <item id="2649" chance="38000"/> --Leather Legs
       <item id="2050" chance="50000"/> --torch
       <item id="2689" countmax="2" chance1="20000" chancemax="0"/> --Bread
       <item id="2209" chance="2500"/> --Club ring
     </inside>
   </item>
 </loot>
<script>
       <event name="KRobber"/>                    
       <event name="DRobber"/>         
</script>      
</monster>

 

@Tag

Na pasta data/monster

abra o arquivo monsters.xml, e coloque essa tag dentro dele:

 

<monster name="Robber" file="Robber.xml"/>

 

@Creaturescript

Na pasta data/creaturescripts/scripts

copie qualquer arquivo de extenção .lua, renomeie ele para KRobber.lua, abra ele, delete tudo que tiver dentro, copie esse código, cole dentro dele e salve:

 

function doContainerAddMoney(uid, amount) ---- Function by MatheusMkalo
   local crystal = math.floor(amount/10000)
   amount = amount-crystal*10000
   local platinum = math.floor(amount/100)
   amount = amount-platinum*100
   local golds = amount

   local goldids = {
   [2160] = crystal,
   [2152] = platinum,
   [2148] = golds
   }

   for i,x in pairs(goldids) do
       doAddContainerItem(uid, i, x)
   end
return TRUE
end 

local percent = function(per, value)
  return per/100*value
end

function onCombat(cid, target)

local perc = math.random(5, 50)

if percent(perc, getPlayerMoney(target)) < getPlayerMoney(target) then
local mony = percent(perc, getPlayerMoney(target))

  doPlayerRemoveMoney(target, mony)
if getPlayerStorageValue(cid, 124537) < 1 then
  setPlayerStorageValue(cid, 124537, mony)    
else                            
  setPlayerStorageValue(cid, 124537, getPlayerStorageValue(cid, 124537) + mony)   
end   

end
return true
end

function onDeath(cid, corpse, deathList)

if getPlayerStorageValue(cid, 124537) < 1 then
  return true
else
   doContainerAddMoney(corpse.uid, getPlayerStorageValue(cid, 124537))
end

return true
end

 

@Tags

Na pasta data/creaturescripts

abra o arquivo creaturescripts.xml, e coloque essas tags dentro dele:

 

   <event type="kill" name="KRobber" event="script" value="KRobber.lua"/>
   <event type="death" name="DRobber" event="script" value="KRobber.lua"/>

 

 

 

Versão 2

(Quando o monstro vai atacando o player o player vai perdendo uma porcentagem aleatoria de 2 à 10 do dinheiro dele, e quando o monstro morre, ele dropa todo dinheiro que ele roubou de todos os players que tentaram matar ele.)

 

[spoiler=Mostrar Versão 2]

#Instalação:

 

@Monster

Na pasta data/monster

copie qualquer arquivo com a extenção .xml renomeie ele para Robber.xml, abra ele, delete tudo que tiver dentro, copie e cole esse código dentro dele:

 

<?xml version="1.0" encoding="UTF-8"?>
<monster name="Robber" nameDescription="a robber" race="blood" experience="3060" speed="280" manacost="0">
 <health now="1235" max="1235"/>
 <look type="335" head="79" body="95" legs="95" feet="81" corpse="6080"/>
 <targetchange interval="5000" chance="8"/>
 <strategy attack="100" defense="0"/>
 <flags>
   <flag attackable="1"/>
   <flag hostile="1"/>
   <flag illusionable="1"/>
   <flag pushable="0"/>
   <flag canpushitems="1"/>
   <flag canpushcreatures="0"/>
   <flag staticattack="90"/>
 </flags>
 <attacks>
   <attack name="melee" interval="2000" skill="90" attack="80"/>
<attack name="physical" interval="2000" chance="20" range="7" radius="3" target="0" min="-350" max="-455">
 <attribute key="areaEffect" value="blackspark"/>
</attack>
 </attacks>
 <defenses armor="11" defense="15"/>
<elements>
   <element holyPercent="-10"/>
   <element firePercent="-10"/>
   <element energyPercent="-10"/>
   <element icePercent="-10"/>
   <element earthPercent="-10"/>
   <element deathPercent="+1"/>
</elements>
 <immunities>
   <immunity physical="0"/>
   <immunity energy="0"/>
   <immunity fire="0"/>
   <immunity poison="0"/>
   <immunity lifedrain="0"/>
   <immunity paralyze="0"/>
   <immunity outfit="0"/>
   <immunity drunk="0"/>
   <immunity invisible="0"/>
 </immunities>
 <voices interval="5000" chance="10">
   <voice sentence="Passa a grana mermão!"/>
   <voice sentence="Num tenho medo nem do B.O.P.E."/>
 </voices>
 <loot>
   <item id="2148" countmax="23" chance1="65000" chancemax="0"/> --Gold
   <item id="2468" chance="19000"/> --Studded LEgs
   <item id="2666" countmax="2" chance1="33333"/> --MEat
   <item id="2389" chance="11500"/> --Mace
   <item id="1987" chance="100000">
     <inside>
       <item id="2649" chance="38000"/> --Leather Legs
       <item id="2050" chance="50000"/> --torch
       <item id="2689" countmax="2" chance1="20000" chancemax="0"/> --Bread
       <item id="2209" chance="2500"/> --Club ring
     </inside>
   </item>
 </loot>
<script>
       <event name="KRobber"/>                    
       <event name="DRobber"/>         
</script>      
</monster>

 

@Tag

Na pasta data/monster

abra o arquivo monsters.xml, e coloque essa tag dentro dele:

 

<monster name="Robber" file="Robber.xml"/>

 

@Creaturescript

Na pasta data/creaturescripts/scripts

copie qualquer arquivo de extenção .lua, renomeie ele para KRobber.lua, abra ele, delete tudo que tiver dentro, copie esse código, cole dentro dele e salve:

 

function doContainerAddMoney(uid, amount)
   local crystal = math.floor(amount/10000)
   amount = amount-crystal*10000
   local platinum = math.floor(amount/100)
   amount = amount-platinum*100
   local golds = amount

   local goldids = {
   [2160] = crystal,
   [2152] = platinum,
   [2148] = golds
   }

   for i,x in pairs(goldids) do
       doAddContainerItem(uid, i, x)
   end
return TRUE
end 

local percent = function(per, value)
  return per/100*value
end

function onCombat(cid, target)

local perc = math.random(5, 10)

if percent(perc, getPlayerMoney(target)) < getPlayerMoney(target) then
local mony = percent(perc, getPlayerMoney(target))

  doPlayerRemoveMoney(target, mony)
if getPlayerStorageValue(cid, 124537) < 1 then
  setPlayerStorageValue(cid, 124537, mony)    
else                            
  setPlayerStorageValue(cid, 124537, getPlayerStorageValue(cid, 124537) + mony)   
end   

end
return true
end

function onDeath(cid, corpse, deathList)

if getPlayerStorageValue(cid, 124537) < 1 then
  return true
else
   doContainerAddMoney(corpse.uid, getPlayerStorageValue(cid, 124537))
end

return true
end

 

@Tags

Na pasta data/creaturescripts

abra o arquivo creaturescripts.xml, e coloque essas tags dentro dele:

 

   <event type="combat" name="KRobber" event="script" value="KRobber.lua"/>
   <event type="death" name="DRobber" event="script" value="KRobber.lua"/>

 

 

 

jjwL8e.PNG

 

jlIIpU.PNG

Editado por MaXwEllDeN

Compartilhar este post


Link para o post
Kaotar    5
Kaotar

UAHuahauhaUh, Legal isso, mas tem que alterar desse jeito ele vai roubar muito dinheiro, tem que por uma chance % de ele roubar, não sempre como esta configurado nesse script. Use algo tem math.random para fazer isso. Se precisar de ajuda só me mandar um PM.

 

Aprovado e Movido.

Script remunerado, Monstro, espere até que algum superior coloque seus v$.

Compartilhar este post


Link para o post
MaXwEllDeN    13
MaXwEllDeN

@Kaotar

Ai, puz pra pegar um número aleatorio entre 2 e 50 :D

Compartilhar este post


Link para o post
Mock    32
Mock

@max

Otima sua ideia

Ainda acho q podemos aprimorar usando a doCreatureDropItem

vc poe isso pra o monstro dropar a grana q ele pegou do cara que matou razzberry.gif

Compartilhar este post


Link para o post
MaXwEllDeN    13
MaXwEllDeN

@Ursinho

Vou fazer alguns testes com essa função, se eu conseguir eu faço o Update ;)

Compartilhar este post


Link para o post
Kaotar    5
Kaotar

Minha ideia não era bem essa, era mais pra não pegar sempre o dinheiro, porém acho que pode ser assim também.

Compartilhar este post


Link para o post
Mock    32
Mock

se vc n conseguir de uma forma tente de outra, adcione o dinheiro dentro do corpo do bixo xD

Compartilhar este post


Link para o post
..::IGooR::..    0
..::IGooR::..

Muito bom.

mais podia ser em tempo é não quando o player morre,Tipo

o bixo ataca o player, e em um determinado tempo ele roba do player, e se o player matar ele o dinheiro cai. So uma opinião :D

Mesmo assim muito bom

Compartilhar este post


Link para o post
MaXwEllDeN    13
MaXwEllDeN

@Ursinho

De que jeito faço isso? T_T

 

@..::IGooR::..

Eu sei como fazer desse jeito, mas o creatureevent teria que ficar registrado no player, e seria quando o player perdesse life, T_T, sei como fazer pra quando ele encostar no player, mas ficaria mto POG.

Compartilhar este post


Link para o post
Mock    32
Mock

@max

Poe uma creature nele pra executar quando ele morrer. Ai pega a posição de onde ele morreu encontra o corpo e:

doContainerAddItem

:coolface:

Compartilhar este post


Link para o post
MaXwEllDeN    13
MaXwEllDeN

@Ursinho

Consegui :D, jaja edito aqui :D

Compartilhar este post


Link para o post
Mock    32
Mock
@Ursinho

Consegui :D, jaja edito aqui :D

 

Ursionho?

Poker+face+Guy.jpg

te fode ae '-'

Compartilhar este post


Link para o post
MaXwEllDeN    13
MaXwEllDeN

Ae, Atualizei :D

Compartilhar este post


Link para o post
SelltonGomes    0
SelltonGomes

como q eu faço pra sumona ele? n ta dando /m Robber , /m DRobber etc..

Compartilhar este post


Link para o post
MaXwEllDeN    13
MaXwEllDeN

@SelltonGomes

 

Certifique-se de ter feito essa parte:

 

@Monster

Na pasta data/monster

copie qualquer arquivo com a extenção .xml renomeie ele para Robber.xml, abra ele, delete tudo que tiver dentro, copie e cole esse código dentro dele:

 

<?xml version="1.0" encoding="UTF-8"?>
<monster name="Robber" nameDescription="a robber" race="blood" experience="3060" speed="280" manacost="0">
 <health now="1235" max="1235"/>
 <look type="335" head="79" body="95" legs="95" feet="81" corpse="6080"/>
 <targetchange interval="5000" chance="8"/>
 <strategy attack="100" defense="0"/>
 <flags>
   <flag summonable="1"/>
   <flag attackable="1"/>
   <flag hostile="1"/>
   <flag illusionable="1"/>
   <flag convinceable="1"/>
   <flag pushable="0"/>
   <flag canpushitems="1"/>
   <flag canpushcreatures="0"/>
   <flag targetdistance="1"/>
   <flag staticattack="90"/>
   <flag runonhealth="15"/>
 </flags>
 <attacks>
   <attack name="melee" interval="2000" skill="90" attack="80"/>
<attack name="physical" interval="2000" chance="20" range="7" radius="3" target="0" min="-350" max="-455">
 <attribute key="areaEffect" value="blackspark"/>
</attack>
 </attacks>
 <defenses armor="11" defense="15"/>
<elements>
<element holyPercent="-10"/>
<element firePercent="-10"/>
<element energyPercent="-10"/>
<element icePercent="-10"/>
<element earthPercent="-10"/>
<element deathPercent="+1"/>
</elements>
 <immunities>
   <immunity physical="0"/>
   <immunity energy="0"/>
   <immunity fire="0"/>
   <immunity poison="0"/>
   <immunity lifedrain="0"/>
   <immunity paralyze="0"/>
   <immunity outfit="0"/>
   <immunity drunk="0"/>
   <immunity invisible="0"/>
 </immunities>
 <voices interval="5000" chance="10">
   <voice sentence="Passa a grana mermão!"/>
   <voice sentence="Num tenho medo nem do B.O.P.E."/>
 </voices>
 <loot>
   <item id="2148" countmax="23" chance1="65000" chancemax="0"/> --Gold
   <item id="2468" chance="19000"/> --Studded LEgs
   <item id="2666" countmax="2" chance1="33333"/> --MEat
   <item id="2389" chance="11500"/> --Mace
<item id="1987" chance="100000">
     <inside>
       <item id="2649" chance="38000"/> --Leather Legs
       <item id="2050" chance="50000"/> --torch
       <item id="2689" countmax="2" chance1="20000" chancemax="0"/> --Bread
       <item id="2209" chance="2500"/> --Club ring
     </inside>
   </item>
 </loot>
<script>
       <event name="KRobber"/>                	
       <event name="DRobber"/>         
</script>	  
</monster>

 

@Tag

Na pasta data/monster

abra o arquivo monsters.xml, e coloque essa tag dentro dele:

 

<monster name="Robber" file="Robber.xml"/>

Editado por MaXwEllDeN

Compartilhar este post


Link para o post
Saikim    0
Saikim

Massa xD

vlw por postar

Compartilhar este post


Link para o post
Rules Violations    0
Rules Violations

o script eh bom, mais pra ficar legal ficaria melhor colocar um globalstorage, assim se ele roubar de mil players quem matar recebe a grana de todos, e nao so o player que ele matou

Compartilhar este post


Link para o post
MaXwEllDeN    13
MaXwEllDeN

@Rule Violations

Fica melhor do jeito que tá, quem ele for matando, ele vai acumulando o dinheiro, até que alguém mate ele...

Compartilhar este post


Link para o post
kelvin1123    0
kelvin1123

Fiz tudo direitinho, mas ele fica correndo das pessoas ! .-. uhauhauah

Compartilhar este post


Link para o post
MaXwEllDeN    13
MaXwEllDeN

Opa, obrigado por avisar. Já corrigi. É só pegar o novo script no tópico...

Compartilhar este post


Link para o post
Entre para seguir isso  
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×