Jump to content
  • 0
Calder89

Scripting Propriedades em: Mounts & Outfits

Question

Calder89

Antes de fazer a sua pergunta, tenha certeza de ter lido as regras da seção e o guia abaixo:

https://forums.otserv.com.br/index.php?/forums/topic/168583-regras-da-seção/

https://forums.otserv.com.br/index.php?/forums/topic/165121-como-fazer-uma-pergunta-ou-o-grande-guia-do-usuário-com-dúvidas/

Descreva em algumas palavras a base utilizada. (Nome do servidor / Nome do cliente / Nome do website / etc.).

Ex: The Forgotten Server 1.3, Versão: 10.98.

Base:

Qual é a sua pergunta?

Olá, coloquei a seguinte propriedade em um npc: "player:addMount(19)" e funciona corretamente

Então, minha pergunta é: Sim, pode adicionar mais propriedades às mounts além da velocidade + 20  (armor,  resistências, etc.)

Também pode adicionar às outfits?

 

Você tem o código disponível? Se tiver poste-o na caixa de código que está dentro do spoiler abaixo:

Spoiler
<?xml version="1.0" encoding="UTF-8"?>
<mounts>
	<mount id="1" clientid="368" name="Widow Queen" speed="20" premium="yes" />
	<mount id="2" clientid="369" name="Racing Bird" speed="20" premium="yes" />
	<mount id="3" clientid="370" name="War Bear" speed="20" premium="yes" />
	<mount id="4" clientid="371" name="Black Sheep" speed="20" premium="yes" />
	<mount id="5" clientid="372" name="Midnight Panther" speed="20" premium="yes" />
	<mount id="6" clientid="373" name="Draptor" speed="20" premium="yes" />
	<mount id="7" clientid="374" name="Titanica" speed="20" premium="yes" />
	<mount id="8" clientid="375" name="Tin Lizzard" speed="20" premium="yes" />
	<mount id="9" clientid="376" name="Blazebringer" speed="20" premium="yes" />
	<mount id="10" clientid="377" name="Rapid Boar" speed="20" premium="yes" />
	<mount id="11" clientid="378" name="Stampor" speed="20" premium="yes" />
	<mount id="12" clientid="379" name="Undead Cavebear" speed="20" premium="yes" />
	<mount id="13" clientid="387" name="Donkey" speed="20" premium="yes" />
	<mount id="14" clientid="388" name="Tiger Slug" speed="20" premium="yes" />
	<mount id="15" clientid="389" name="Uniwheel" speed="20" premium="yes" />
	<mount id="16" clientid="390" name="Crystal Wolf" speed="20" premium="yes" />
	<mount id="17" clientid="392" name="War Horse" speed="20" premium="yes" />
	<mount id="18" clientid="401" name="Kingly Deer" speed="20" premium="yes" />
	<mount id="19" clientid="402" name="Tamed Panda" speed="20" premium="yes" />
	<mount id="20" clientid="405" name="Dromedary" speed="20" premium="yes" />
	<mount id="21" clientid="406" name="Scorpion King" speed="20" premium="yes" />
	<mount id="22" clientid="421" name="Rented Horse" speed="20" premium="no" />
	<mount id="23" clientid="426" name="Armoured War Horse" speed="20" premium="yes" />
	<mount id="24" clientid="427" name="Shadow Draptor" speed="20" premium="yes" />
	<mount id="25" clientid="437" name="Rented Horse" speed="20" premium="no" />
	<mount id="26" clientid="438" name="Rented Horse" speed="20" premium="no" />
	<mount id="27" clientid="447" name="Lady Bug" speed="20" premium="yes" />
	<mount id="28" clientid="450" name="Manta Ray" speed="20" premium="yes" />
	<mount id="29" clientid="502" name="Ironblight" speed="20" premium="yes" />
	<mount id="30" clientid="503" name="Magma Crawler" speed="20" premium="yes" />
	<mount id="31" clientid="506" name="Dragonling" speed="20" premium="yes" />
	<mount id="32" clientid="515" name="Gnarlhound" speed="20" premium="yes" />
	<mount id="33" clientid="521" name="Crimson Ray" speed="20" premium="yes" />
	<mount id="34" clientid="522" name="Steelbeak" speed="20" premium="yes" />
	<mount id="35" clientid="526" name="Water Buffalo" speed="20" premium="yes" />
	<mount id="36" clientid="546" name="Tombstinger" speed="20" premium="yes" />
	<mount id="37" clientid="547" name="Platesaurian" speed="20" premium="yes" />
	<mount id="38" clientid="548" name="Ursagrodon" speed="20" premium="yes" />
	<mount id="39" clientid="559" name="The Hellgrip" speed="20" premium="yes" />
	<mount id="40" clientid="571" name="Noble Lion" speed="20" premium="yes" />
	<mount id="41" clientid="572" name="Desert King" speed="20" premium="yes" />
	<mount id="42" clientid="580" name="Shock Head" speed="20" premium="yes" />
	<mount id="43" clientid="606" name="Walker" speed="20" premium="yes" />
	<mount id="44" clientid="621" name="Azudocus" speed="20" premium="yes" />
	<mount id="45" clientid="622" name="Carpacosaurus" speed="20" premium="yes" />
	<mount id="46" clientid="624" name="Death Crawler" speed="20" premium="yes" />
	<mount id="47" clientid="626" name="Flamesteed" speed="20" premium="yes" />
	<mount id="48" clientid="627" name="Jade Lion" speed="20" premium="yes" />
	<mount id="49" clientid="628" name="Jade Pincer" speed="20" premium="yes" />
	<mount id="50" clientid="629" name="Nethersteed" speed="20" premium="yes" />
	<mount id="51" clientid="630" name="Tempest" speed="20" premium="yes" />
	<mount id="52" clientid="631" name="Winter King" speed="20" premium="yes" />
	<mount id="53" clientid="644" name="Doombringer" speed="20" premium="yes" />
	<mount id="54" clientid="647" name="Woodland Prince" speed="20" premium="yes" />
	<mount id="55" clientid="648" name="Hailstorm Fury" speed="20" premium="yes" />
	<mount id="56" clientid="649" name="Siegebreaker" speed="20" premium="yes" />
	<mount id="57" clientid="650" name="Poisonbane" speed="20" premium="yes" />
	<mount id="58" clientid="651" name="Blackpelt" speed="20" premium="yes" />
	<mount id="59" clientid="669" name="Golden Dragonfly" speed="20" premium="yes" />
	<mount id="60" clientid="670" name="Steel Bee" speed="20" premium="yes" />
	<mount id="61" clientid="671" name="Copper Fly" speed="20" premium="yes" />
	<mount id="62" clientid="672" name="Tundra Rambler" speed="20" premium="yes" />
	<mount id="63" clientid="673" name="Highland Yak" speed="20" premium="yes" />
	<mount id="64" clientid="674" name="Glacier Vagabond" speed="20" premium="yes" />
	<mount id="65" clientid="688" name="Flying Divan" speed="20" premium="yes" />
	<mount id="66" clientid="689" name="Magic Carpet" speed="20" premium="yes" />
	<mount id="67" clientid="690" name="Floating Kashmir" speed="20" premium="yes" />
	<mount id="68" clientid="691" name="Ringtail Waccoon" speed="20" premium="yes" />
	<mount id="69" clientid="692" name="Night Waccoon" speed="20" premium="yes" />
	<mount id="70" clientid="693" name="Emerald Waccoon" speed="20" premium="yes" />
	<mount id="71" clientid="682" name="Glooth Glider" speed="20" premium="yes" />
	<mount id="72" clientid="685" name="Shadow Hart" speed="20" premium="yes" />
	<mount id="73" clientid="686" name="Black Stag" speed="20" premium="yes" />
	<mount id="74" clientid="687" name="Emperor Deer" speed="20" premium="yes" />
	<mount id="75" clientid="726" name="Flitterkatzen" speed="20" premium="yes" />
	<mount id="76" clientid="727" name="Venompaw" speed="20" premium="yes" />
	<mount id="77" clientid="728" name="Batcat" speed="20" premium="yes" />
	<mount id="78" clientid="734" name="Sea Devil" speed="20" premium="yes" />
	<mount id="79" clientid="735" name="Coralripper" speed="20" premium="yes" />
	<mount id="80" clientid="736" name="Plumfish" speed="20" premium="yes" />
	<mount id="81" clientid="738" name="Gorongra" speed="20" premium="yes" />
	<mount id="82" clientid="739" name="Noctungra" speed="20" premium="yes" />
	<mount id="83" clientid="740" name="Silverneck" speed="20" premium="yes" />
	<mount id="84" clientid="761" name="Slagsnare" speed="20" premium="yes" />
	<mount id="85" clientid="762" name="Nightstinger" speed="20" premium="yes" />
	<mount id="86" clientid="763" name="Razorcreep" speed="20" premium="yes" />
	<mount id="87" clientid="848" name="Rift Runner" speed="20" premium="yes" />
	<mount id="88" clientid="849" name="Nightdweller" speed="20" premium="yes" />
	<mount id="89" clientid="850" name="Frostflare" speed="20" premium="yes" />
	<mount id="90" clientid="851" name="Cinderhoof" speed="20" premium="yes" />
	<mount id="91" clientid="868" name="Mouldpincer" speed="20" premium="yes" />
	<mount id="92" clientid="869" name="Bloodcurl" speed="20" premium="yes" />
	<mount id="93" clientid="870" name="Leafscuttler" speed="20" premium="yes" />
	<mount id="94" clientid="883" name="Sparkion" speed="20" premium="yes" />
	<mount id="95" clientid="886" name="Swamp Snapper" speed="20" premium="yes" />
	<mount id="96" clientid="887" name="Mould Shell" speed="20" premium="yes" />
	<mount id="97" clientid="888" name="Reed Lurker" speed="20" premium="yes" />
	<mount id="98" clientid="889" name="Neon Sparkid" speed="20" premium="yes" />
	<mount id="99" clientid="890" name="Vortexion" speed="20" premium="yes" />
	<mount id="100" clientid="901" name="Ivory Fang" speed="20" premium="yes" />
	<mount id="101" clientid="902" name="Shadow Claw" speed="20" premium="yes" />
	<mount id="102" clientid="903" name="Snow Pelt" speed="20" premium="yes" />
	<mount id="103" clientid="905" name="Jackalope" speed="20" premium="yes" />
	<mount id="104" clientid="906" name="Dreadhare" speed="20" premium="yes" />
	<mount id="105" clientid="907" name="Wolpertinger" speed="20" premium="yes" />
	<mount id="106" clientid="937" name="Stone Rhino" speed="20" premium="yes" />
	<mount id="107" clientid="950" name="Gold Sphinx" speed="20" premium="yes" />
	<mount id="108" clientid="951" name="Emerald Sphinx" speed="20" premium="yes" />
	<mount id="109" clientid="952" name="Shadow Sphinx" speed="20" premium="yes" />
	<mount id="110" clientid="959" name="Jungle Saurian" speed="20" premium="yes" />
	<mount id="111" clientid="960" name="Ember Saurian" speed="20" premium="yes" />
	<mount id="112" clientid="961" name="Lagoon Saurian" speed="20" premium="yes" />
	<mount id="113" clientid="1017" name="Blazing Unicorn" speed="20" premium="yes" />
	<mount id="114" clientid="1018" name="Arctic Unicorn" speed="20" premium="yes" />
	<mount id="115" clientid="1019" name="Prismatic unicorn" speed="20" premium="yes" />
	<mount id="116" clientid="1025" name="Cranium Spider" speed="20" premium="yes" />
	<mount id="117" clientid="1026" name="Cave Tarantula" speed="20" premium="yes" />
	<mount id="118" clientid="1027" name="Gloom Widow" speed="20" premium="yes" />
	<mount id="119" clientid="1049" name="Mole" speed="20" premium="yes" />
	<mount id="120" clientid="1052" name="Marsh Toad" speed="20" premium="yes" />
	<mount id="121" clientid="1053" name="Sanguine Frog" speed="20" premium="yes" />
	<mount id="122" clientid="1054" name="Toxic Toad" speed="20" premium="yes" />
	<mount id="123" clientid="1091" name="Ebony Tiger" speed="20" premium="yes" />
	<mount id="124" clientid="1092" name="Feral Tiger" speed="20" premium="yes" />
	<mount id="125" clientid="1093" name="Jungle Tiger" speed="20" premium="yes" />
	<mount id="126" clientid="1101" name="Fleeting Knowledge" speed="20" premium="yes" />
	<mount id="127" clientid="1104" name="Tawny Owl" speed="20" premium="yes" />
	<mount id="128" clientid="1105" name="Snowy Owl" speed="20" premium="yes" />
	<mount id="129" clientid="1106" name="Boreal Owl" speed="20" premium="yes" />
	<mount id="130" clientid="1150" name="Lacewing Moth" speed="20" premium="yes" />
	<mount id="131" clientid="1151" name="Hibernal Moth" speed="20" premium="yes" />
	<mount id="132" clientid="1163" name="Cold Percht Sleigh" speed="20" premium="yes" />
	<mount id="133" clientid="1164" name="Bright Percht Sleigh" speed="20" premium="yes" />
	<mount id="134" clientid="1165" name="Dark Percht Sleigh" speed="20" premium="yes" />
	<mount id="135" clientid="1167" name="Festive Snowman" speed="20" premium="yes" />
	<mount id="136" clientid="1168" name="Muffled Snowman" speed="20" premium="yes" />
	<mount id="137" clientid="1169" name="Caped Snowman" speed="20" premium="yes" />
	<mount id="138" clientid="1179" name="Rabbit Rickshaw" speed="20" premium="yes" />
	<mount id="139" clientid="1180" name="Bunny Dray" speed="20" premium="yes" />
	<mount id="140" clientid="1181" name="Cony Cart" speed="20" premium="yes" />
	<mount id="141" clientid="1183" name="River Crocovile" speed="20" premium="yes" />
	<mount id="142" clientid="1184" name="Swamp Crocovile" speed="20" premium="yes" />
	<mount id="143" clientid="1185" name="Nightmarish Crocovile" speed="20" premium="yes" />
	<mount id="144" clientid="1191" name="Gryphon" speed="20" premium="yes" />
 	<mount id="145" clientid="1208" name="Jousting Eagle" speed="20" premium="yes" />
	<mount id="146" clientid="1209" name="Cerberus Champion" speed="20" premium="yes" />
	<mount id="147" clientid="1247" name="Battle Badger" speed="20" premium="yes" />
	<mount id="148" clientid="1248" name="Ether Badger" speed="20" premium="yes" />
	<mount id="149" clientid="1249" name="Zaoan Badger" speed="20" premium="yes" />
	<mount id="150" clientid="1257" name="Blue Rolling Barrel" speed="20" premium="yes" />
	<mount id="151" clientid="1258" name="Red Rolling Barrel" speed="20" premium="yes" />
	<mount id="152" clientid="1259" name="Green Rolling Barrel" speed="20" premium="yes" />
	<mount id="153" clientid="1264" name="Floating Sage" speed="20" premium="yes" />
	<mount id="154" clientid="1265" name="Floating Scholar" speed="20" premium="yes" />
	<mount id="155" clientid="1266" name="Floating Augur" speed="20" premium="yes" />
	<mount id="156" clientid="1269" name="Haze" speed="20" premium="yes" />
	<mount id="157" clientid="1281" name="Antelope" speed="20" premium="yes" />
</mounts> 
<?xml version="1.0" encoding="UTF-8"?>
<outfits>
	<!-- Female outfits -->
	<outfit type="0" looktype="136" name="Citizen" premium="no" unlocked="yes" enabled="yes" />
	<outfit type="0" looktype="137" name="Hunter" premium="no" unlocked="yes" enabled="yes" />
	<outfit type="0" looktype="138" name="Mage" premium="no" unlocked="yes" enabled="yes" />
	<outfit type="0" looktype="139" name="Knight" premium="no" unlocked="yes" enabled="yes" />
	<outfit type="0" looktype="140" name="Noblewoman" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="0" looktype="141" name="Summoner" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="0" looktype="142" name="Warrior" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="0" looktype="147" name="Barbarian" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="0" looktype="148" name="Druid" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="0" looktype="149" name="Wizard" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="0" looktype="150" name="Oriental" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="0" looktype="155" name="Pirate" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="156" name="Assassin" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="157" name="Beggar" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="158" name="Shaman" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="252" name="Norsewoman" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="269" name="Nightmare" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="270" name="Jester" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="279" name="Brotherhood" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="288" name="Demon Hunter" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="324" name="Yalaharian" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="329" name="Newly Wed" premium="no" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="336" name="Warmaster" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="366" name="Wayfarer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="431" name="Afflicted" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="433" name="Elementalist" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="464" name="Deepling" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="466" name="Insectoid" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="471" name="Entrepreneur" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="513" name="Crystal Warlord" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="514" name="Soil Guardian" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="542" name="Demon Outfit" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="575" name="Cave Explorer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="578" name="Dream Warden" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="618" name="Glooth Engineer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="620" name="Jersey" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="632" name="Champion" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="635" name="Conjurer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="636" name="Beastmaster" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="664" name="Chaos Acolyte" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="666" name="Death Herald" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="683" name="Ranger" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="694" name="Ceremonial Garb" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="696" name="Puppeteer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="698" name="Spirit Caller" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="724" name="Evoker" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="732" name="Seaweaver" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="745" name="Recruiter" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="749" name="Sea Dog" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="759" name="Royal Pumpkin" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="845" name="Rift Warrior" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="852" name="Winter Warden" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="874" name="Philosopher" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="885" name="Arena Champion" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="900" name="Lupine Warden" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="909" name="Grove Keeper" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="929" name="Festive Outfit" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="956" name="Pharaoh" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="958" name="Trophy Hunter" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="963" name="Retro Warrior" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="965" name="Retro Summoner" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="967" name="Retro Noblewoman" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="969" name="Retro Wizard" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="971" name="Retro Knight" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="973" name="Retro Hunter" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="975" name="Retro Citizen" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1020" name="Herbalist" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1024" name="Sun Priest" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1043" name="Makeshift Warrior" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1050" name="Siege Master" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1057" name="Mercenary" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1070" name="Battle Mage" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1095" name="Discoverer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1103" name="Sinister Archer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1128" name="Pumpkin Mummy" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1147" name="Dream Warrior" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1162" name="Percht Raider" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1174" name="Owl Keeper" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1187" name="Guidon Bearer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1203" name="Void Master" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1205" name="Veteran Paladin" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1207" name="Lion of War" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1211" name="Golden" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1244" name="Hand of the Inquisition" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1246" name="Breezy Garb" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1252" name="Orcsoberfest" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1271" name="Poltergeist" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1280" name="Herder" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="0" looktype="1283" name="Falconer" premium="yes" unlocked="no" enabled="yes" />	

	<!-- Male outfits -->
	<outfit type="1" looktype="128" name="Citizen" premium="no" unlocked="yes" enabled="yes" />
	<outfit type="1" looktype="129" name="Hunter" premium="no" unlocked="yes" enabled="yes" />
	<outfit type="1" looktype="130" name="Mage" premium="no" unlocked="yes" enabled="yes" />
	<outfit type="1" looktype="131" name="Knight" premium="no" unlocked="yes" enabled="yes" />
	<outfit type="1" looktype="132" name="Nobleman" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="1" looktype="133" name="Summoner" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="1" looktype="134" name="Warrior" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="1" looktype="143" name="Barbarian" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="1" looktype="144" name="Druid" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="1" looktype="145" name="Wizard" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="1" looktype="146" name="Oriental" premium="yes" unlocked="yes" enabled="yes" />
	<outfit type="1" looktype="151" name="Pirate" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="152" name="Assassin" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="153" name="Beggar" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="154" name="Shaman" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="251" name="Norseman" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="268" name="Nightmare" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="273" name="Jester" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="278" name="Brotherhood" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="289" name="Demon Hunter" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="325" name="Yalaharian" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="328" name="Newly Wed" premium="no" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="335" name="Warmaster" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="367" name="Wayfarer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="430" name="Afflicted" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="432" name="Elementalist" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="463" name="Deepling" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="465" name="Insectoid" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="472" name="Entrepreneur" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="512" name="Crystal Warlord" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="516" name="Soil Guardian" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="541" name="Demon Outfit" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="574" name="Cave Explorer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="577" name="Dream Warden" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="610" name="Glooth Engineer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="619" name="Jersey" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="633" name="Champion" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="634" name="Conjurer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="637" name="Beastmaster" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="665" name="Chaos Acolyte" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="667" name="Death Herald" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="684" name="Ranger" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="695" name="Ceremonial Garb" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="697" name="Puppeteer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="699" name="Spirit Caller" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="725" name="Evoker" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="733" name="Seaweaver" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="746" name="Recruiter" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="750" name="Sea Dog" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="760" name="Royal Pumpkin" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="846" name="Rift Warrior" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="853" name="Winter Warden" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="873" name="Philosopher" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="884" name="Arena Champion" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="899" name="Lupine Warden" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="908" name="Grove Keeper" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="931" name="Festive Outfit" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="955" name="Pharaoh" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="957" name="Trophy Hunter" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="962" name="Retro Warrior" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="964" name="Retro Summoner" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="966" name="Retro Nobleman" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="968" name="Retro Wizard" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="970" name="Retro Knight" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="972" name="Retro Hunter" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="974" name="Retro Citizen" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1021" name="Herbalist" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1023" name="Sun Priest" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1042" name="Makeshift Warrior" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1051" name="Siege Master" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1056" name="Mercenary" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1069" name="Battle Mage" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1094" name="Discoverer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1102" name="Sinister Archer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1127" name="Pumpkin Mummy" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1146" name="Dream Warrior" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1161" name="Percht Raider" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1173" name="Owl Keeper" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1186" name="Guidon Bearer" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1202" name="Void Master" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1204" name="Veteran Paladin" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1206" name="Lion of War" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1210" name="Golden" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1243" name="Hand of the Inquisition" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1245" name="Breezy Garb" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1251" name="Orcsoberfest" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1270" name="Poltergeist" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1279" name="Herder" premium="yes" unlocked="no" enabled="yes" />
	<outfit type="1" looktype="1282" name="Falconer" premium="yes" unlocked="no" enabled="yes" />
</outfits>

 

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, anexe-a dentro do spoiler abaixo:

Spoiler

 

 

Share this post


Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 0
Calder89
Eu não entendo o primeiro link, o segundo link resultou
Desvantagens no momento: 
-Não importa se você tem addons 
-Você não pode colocar 2 condições diferentes na mesma roupa(CONDITION_ATTRIBUTES, CONDITION_HASTE, CONDITION_REGENERATION)
data/events/scripts/creature.lua 
__picif = {}
----------------------------------------------------------Outfit------------------------------------------------
function createBonusCondition(id, params)
    local condition = Condition(CONDITION_ATTRIBUTES, CONDITIONID_DEFAULT)
    condition:setParameter(CONDITION_PARAM_TICKS, -1)
    condition:setParameter(CONDITION_PARAM_SUBID, id)
    for i = 1, #params do
        local param = params[i].param
        local value = params[i].value
        condition:setParameter(param, value)
    end
    return condition
end

function createHasteCondition(id, params)
    local condition = Condition(CONDITION_HASTE, CONDITIONID_DEFAULT)
    condition:setParameter(CONDITION_PARAM_TICKS, -1)
    condition:setParameter(CONDITION_PARAM_SUBID, id)
    for i = 1, #params do
        local param = params[i].param
        local value = params[i].value
        condition:setParameter(param, value)
    end
    return condition
end

function createRegenCondition(id, params)
    local condition = Condition(CONDITION_REGENERATION, CONDITIONID_DEFAULT)
    condition:setParameter(CONDITION_PARAM_TICKS, -1)
    condition:setParameter(CONDITION_PARAM_SUBID, id)
    for i = 1, #params do
        local param = params[i].param
        local value = params[i].value
        condition:setParameter(param, value)
    end
    return condition
end
--[[   createBonusCondition: 
	CONDITION_PARAM_SKILL_DISTANCE 
	CONDITION_PARAM_SKILL_CLUB
	CONDITION_PARAM_SKILL_AXE
	CONDITION_PARAM_SKILL_SWORD
	CONDITION_PARAM_SKILL_FIST
	CONDITION_PARAM_SKILL_SHIELD
	CONDITION_PARAM_SKILL_CRITICAL_HIT_CHANCE
	CONDITION_PARAM_SKILL_CRITICAL_HIT_DAMAGE
	CONDITION_PARAM_SKILL_LIFE_LEECH_CHANCE
	CONDITION_PARAM_SKILL_LIFE_LEECH_AMOUNT
	CONDITION_PARAM_SKILL_MANA_LEECH_CHANCE
	CONDITION_PARAM_SKILL_MANA_LEECH_AMOUNT
	CONDITION_PARAM_STAT_MAXHITPOINTS
	CONDITION_PARAM_STAT_MAXMANAPOINTS
--]]

--[[ createHasteCondition:  
	CONDITION_PARAM_SPEED
--]]

--[[ createRegenCondition:  
	CONDITION_PARAM_HEALTHGAIN
	CONDITION_PARAM_HEALTHTICKS
	CONDITION_PARAM_MANAGAIN
	CONDITION_PARAM_MANATICKS
--]]
--[[ outfitBonuses:
	128, 136 name="Citizen" 
	129, 137 name="Hunter" 
	130, 138 name="Mage" 
	131, 139" name="Knight"
	132, 140" name="Nobleman", Noblewoman"
	133, 141" name="Summoner" 
	134, 142" name="Warrior" 
	143, 147" name="Barbarian" 
	144, 148" name="Druid" 
	145, 149" name="Wizard" 
	146, 150" name="Oriental" 
	151, 155" name="Pirate" 
	152, 156" name="Assassin" 
	153, 157" name="Beggar" 
	154, 158" name="Shaman" 
	251, 252" name="Norsewoman, Norsewoman"
	268, 269" name="Nightmare" 
	273, 270" name="Jester" 
	278, 279" name="Brotherhood" 
	289, 288" name="Demon Hunter" 
	325, 324" name="Yalaharian" 
	328, 329" name="Newly Wed" 
	335, 336" name="Warmaster" 
	367, 366" name="Wayfarer"
	430, 431" name="Afflicted" 
	432, 433" name="Elementalist" 
	463, 464" name="Deepling" 
	465, 466" name="Insectoid"
	472, 471" name="Entrepreneur"
	512, 513" name="Crystal Warlord" 
	516, 514" name="Soil Guardian" 
	541, 542" name="Demon Outfit" 
	574, 575" name="Cave Explorer" 
	577, 578" name="Dream Warden" 
	610, 618" name="Glooth Engineer" 
	619, 620" name="Jersey" 
	633, 632" name="Champion" 
	634, 635" name="Conjurer" 
	637, 636" name="Beastmaster"
	665, 664" name="Chaos Acolyte" 
	667, 666" name="Death Herald" 
	684, 683" name="Ranger" 
	695, 694" name="Ceremonial Garb" 
	697, 696" name="Puppeteer" 
	699, 698" name="Spirit Caller" 
	725, 724" name="Evoker" 
	733, 732" name="Seaweaver" 
	746, 745" name="Recruiter" 
	750, 749" name="Sea Dog" 
	760, 759" name="Royal Pumpkin" 
	846, 845" name="Rift Warrior" 
	853, 852" name="Winter Warden" 
	873, 874" name="Philosopher" 
	884, 885" name="Arena Champion" 
	899, 900" name="Lupine Warden" 
	908, 909" name="Grove Keeper" 
	931, 929" name="Festive Outfit" 
	955, 956" name="Pharaoh" 
	957, 958" name="Trophy Hunter" 
	962, 963" name="Retro Warrior" 
	964, 965" name="Retro Summoner" 
	966, 967" name="Retro Nobleman, Noblewoman" 
	968, 969" name="Retro Wizard" 
	970, 971" name="Retro Knight" 
	972, 973" name="Retro Hunter" 
	974, 975" name="Retro Citizen" 
	1021, 1020" name="Herbalist" 
	1023, 1024" name="Sun Priest" 
	1042, 1043" name="Makeshift Warrior" 
	1051, 1050" name="Siege Master" 
	1056, 1057" name="Mercenary" 
	1069, 1070" name="Battle Mage" 
	1094, 1095" name="Discoverer" 
	1102, 1103" name="Sinister Archer" 
	1127, 1128" name="Pumpkin Mummy" 
	1146, 1147" name="Dream Warrior" 
	1161, 1162" name="Saqueador Siniestro, Saqueadora Siniestra" 
	1173, 1174" name="Owl Keeper"
	1186, 1187" name="Guidon Bearer" 
	1202, 1203" name="Void Master" 
	1204, 1205" name="Veteran Paladin" 
	1206, 1207" name="Lion of War" 
	1210, 1211" name="Golden Outfit" 
	159" name="Elfo GM" 
	160" name="Enano GM" 
	73" name="Heroe GM" 
	1136" name="Elfa A GM" 
	1137" name="Elfa B GM" 
	1068" name="Asura GM" 
	12" name="Demino GM" 
	194" name="Acolito GM" 
	980" name="Fauno GM"
	264" name="Bandida GM" 
	253" name="Bandido A GM"
	254" name="Bandido B GM" 
	255" name="Bandido C GM" 
	1071" name="Escudero GM" 
	947" name="Dragon GM" 
--]]
outfitBonuses = {
    [{128, 136}] = createHasteCondition(1, {
            {param = CONDITION_PARAM_SPEED, value = 20}    
        }
    ),
    [{129, 137}] = createBonusCondition(2, {
            {param = CONDITION_PARAM_SKILL_DISTANCE, value = 1}
        }
    )
}
function getBonusCondition(outfit)
    for outfits, bonus in pairs(outfitBonuses) do
        if table.contains(outfits, outfit) then
            return bonus
        end
    end
    return nil
end

function Creature:onChangeOutfit(outfit)
    if not self:isPlayer() then
        return true
    end
    local previousBonusCondition = getBonusCondition(self:getOutfit().lookType)
    local newBonusCondition = getBonusCondition(outfit.lookType)
    if previousBonusCondition then
        self:removeCondition(CONDITION_ATTRIBUTES, CONDITIONID_DEFAULT, previousBonusCondition:getSubId())
		self:removeCondition(CONDITION_HASTE, CONDITIONID_DEFAULT, previousBonusCondition:getSubId())
		self:removeCondition(CONDITION_REGENERATION, CONDITIONID_DEFAULT, previousBonusCondition:getSubId())
    end
    if newBonusCondition then
        self:addCondition(newBonusCondition)
    end
    return true
end

function Creature:onAreaCombat(tile, isAggressive)
	return true
end
----------------------------------------------------------Outfit------------------------------------------------
-- Prey slots consumption
local function preyTimeLeft(player, slot)
	local timeLeft = player:getPreyTimeLeft(slot) / 60
	if (timeLeft > 0) then
		local playerId = player:getId()
		local currentTime = os.time()
		local timePassed = currentTime - nextPreyTime[playerId][slot]
		if timePassed > 0 then
			if timePassed > 60 then
				if timeLeft > 2 then
					timeLeft = timeLeft - 2
				else
					timeLeft = 0
				end
				nextPreyTime[playerId][slot] = currentTime + 120
			else
				timeLeft = timeLeft - 1
				nextPreyTime[playerId][slot] = currentTime + 60
			end
		end
		-- Expiring prey as there's no timeLeft
		if (timeLeft <= 1) then
			player:sendTextMessage(MESSAGE_EVENT_ADVANCE, string.format("Your %s's prey has expired.", monster:lower()))
			player:setPreyCurrentMonster(slot, "")
		end
		-- Setting new timeLeft
		player:setPreyTimeLeft(slot, timeLeft * 60)
	else
		-- Expiring prey as there's no timeLeft
		player:sendTextMessage(MESSAGE_EVENT_ADVANCE, string.format("Your %s's prey has expired.", monster:lower()))
		player:setPreyCurrentMonster(slot, "")
	end
end

local function removeCombatProtection(cid)
	local player = Player(cid)
	if not player then
		return true
	end

	local time = 0
	if player:isMage() then
		time = 10
	elseif player:isPaladin() then
		time = 20
	else
		time = 30
	end

	player:setStorageValue(Storage.combatProtectionStorage, 2)
	addEvent(function(cid)
		local player = Player(cid)
		if not player then
			return
		end

		player:setStorageValue(Storage.combatProtectionStorage, 0)
		player:remove()
	end, time * 1000, cid)
end

-- Increase Stamina when Attacking Trainer
local staminaBonus = {
	target = 'Training Monk',
	period = 120000, -- time on miliseconds
	bonus = 1, -- gain stamina
	events = {}
}

local function addStamina(name)
	local player = Player(name)
	if not player then
		staminaBonus.events[name] = nil
	else
		local target = player:getTarget()
		if not target or target:getName() ~= staminaBonus.target then
			staminaBonus.events[name] = nil
		else
			player:setStamina(player:getStamina() + staminaBonus.bonus)
			staminaBonus.events[name] = addEvent(addStamina, staminaBonus.period, name)
		end
	end
end

function Creature:onTargetCombat(target)
	if not self then
		return true
	end

	if not __picif[target.uid] then
		if target:isMonster() then
			target:registerEvent("RewardSystemSlogan")
			__picif[target.uid] = {}
		end
	end

	if target:isPlayer() then
		if self:isMonster() then
			local protectionStorage = target:getStorageValue(Storage.combatProtectionStorage)

			if target:getIp() == 0 then -- If player is disconnected, monster shall ignore to attack the player
			    if target:isPzLocked() then end
				if protectionStorage <= 0 then
					addEvent(removeCombatProtection, 30 * 1000, target.uid)
					target:setStorageValue(Storage.combatProtectionStorage, 1)
				elseif protectionStorage == 1 then
					self:searchTarget()
					return RETURNVALUE_YOUMAYNOTATTACKTHISPLAYER
				end

				return true
			end

			if protectionStorage >= os.time() then
				return RETURNVALUE_YOUMAYNOTATTACKTHISPLAYER
			end
		end
	end

	if ((target:isMonster() and self:isPlayer() and target:getType():isPet() and target:getMaster() == self) or (self:isMonster() and target:isPlayer() and self:getType():isPet() and self:getMaster() == target)) then
		return RETURNVALUE_YOUMAYNOTATTACKTHISCREATURE
	end

	if PARTY_PROTECTION ~= 0 then
		if self:isPlayer() and target:isPlayer() then
			local party = self:getParty()
			if party then
				local targetParty = target:getParty()
				if targetParty and targetParty == party then
					return RETURNVALUE_YOUMAYNOTATTACKTHISPLAYER
				end
			end
		end
	end

	if ADVANCED_SECURE_MODE ~= 0 then
		if self:isPlayer() and target:isPlayer() then
			if self:hasSecureMode() then
				return RETURNVALUE_YOUMAYNOTATTACKTHISPLAYER
			end
		end
	end

		if self:isPlayer() then
		if target and target:getName() == staminaBonus.target then
			local name = self:getName()
			if not staminaBonus.events[name] then
				staminaBonus.events[name] = addEvent(addStamina, staminaBonus.period, name)
			end
		end
	end

	return true
end

function Creature:onDrainHealth(attacker, typePrimary, damagePrimary, typeSecondary, damageSecondary, colorPrimary, colorSecondary)
	if (not self) then
		return typePrimary, damagePrimary, typeSecondary, damageSecondary, colorPrimary, colorSecondary
	end

	if (not attacker) then
		return typePrimary, damagePrimary, typeSecondary, damageSecondary, colorPrimary, colorSecondary
	end

	-- Imbuement Defense
	if self:isPlayer() then
		for slot = 1, 10 do
			local item = self:getSlotItem(slot)
			if item and item:getType():getImbuingSlots() > 0 then
				for i = 1, item:getType():getImbuingSlots() do
					local slotEnchant = item:getSpecialAttribute(i)
					if (slotEnchant and type(slotEnchant) == 'string') then
						local percentDamage, enchantPercent = 0, item:getImbuementPercent(slotEnchant)
						local typeEnchant = item:getImbuementType(i) or ""

						reductPrimary, reductSecondary = false, false
						if (typeEnchant == "absorbPercentFire") then
							-- reduct fire damage
							if typePrimary == COMBAT_FIREDAMAGE then
								reductPrimary = true
							end

							if typeSecondary == COMBAT_FIREDAMAGE then
								reductSecondary = true
							end
						elseif (typeEnchant == "absorbPercentEarth" and typePrimary == COMBAT_EARTHDAMAGE) then
							-- reduct earth damage
							if typePrimary == COMBAT_EARTHDAMAGE then
								reductPrimary = true
							end

							if typeSecondary == COMBAT_EARTHDAMAGE then
								reductSecondary = true
							end
						elseif (typeEnchant == "absorbPercentIce" and typePrimary == COMBAT_ICEDAMAGE) then
							-- reduct ice damage
							if typePrimary == COMBAT_ICEDAMAGE then
								reductPrimary = true
							end

							if typeSecondary == COMBAT_ICEDAMAGE then
								reductSecondary = true
							end
						elseif (typeEnchant == "absorbPercentEnergy" and typePrimary == COMBAT_ENERGYDAMAGE) then
							-- reduct energy damage
							if typePrimary == COMBAT_ENERGYDAMAGE then
								reductPrimary = true
							end

							if typeSecondary == COMBAT_ENERGYDAMAGE then
								reductSecondary = true
							end
						elseif (typeEnchant == "absorbPercentDeath" and typePrimary == COMBAT_DEATHDAMAGE) then
							-- reduct death damage
							if typePrimary == COMBAT_DEATHDAMAGE then
								reductPrimary = true
							end

							if typeSecondary == COMBAT_DEATHDAMAGE then
								reductSecondary = true
							end
						end

						if reductPrimary then
							damagePrimary = damagePrimary - (damagePrimary * enchantPercent/100)
						end

						if reductSecondary then
							damageSecondary = damageSecondary - (damageSecondary * enchantPercent/100)
						end

						if (typeEnchant ~= "" and typeEnchant == "skillShield" or typeEnchant:find("absorb") and (reductPrimary or reductSecondary)) then
							useStaminaImbuing(self:getId(), item:getUniqueId())
						end
					end
				end
			end
		end
	end

	-- New prey => Bonus damage
	if (attacker:isPlayer()) then
		if (self:isMonster() and not self:getMaster()) then
			for slot = CONST_PREY_SLOT_FIRST, CONST_PREY_SLOT_THIRD do
				if (attacker:getPreyCurrentMonster(slot) == self:getName() and attacker:getPreyBonusType(slot) == CONST_BONUS_DAMAGE_BOOST) then
					damagePrimary = damagePrimary + math.floor(damagePrimary * (attacker:getPreyBonusValue(slot) / 100))
					preyTimeLeft(attacker, slot) -- slot consumption
					break
				end
			end
		end
	-- New prey => Damage reduction
	elseif (attacker:isMonster()) then
		if (self:isPlayer()) then
			for slot = CONST_PREY_SLOT_FIRST, CONST_PREY_SLOT_THIRD do
				if (self:getPreyCurrentMonster(slot) == attacker:getName() and self:getPreyBonusType(slot) == CONST_BONUS_DAMAGE_REDUCTION) then
					damagePrimary = damagePrimary - math.floor(damagePrimary * (self:getPreyBonusValue(slot) / 100))
					preyTimeLeft(self, slot) -- slot consumption
					break
				end
			end
		end
	end

	return typePrimary, damagePrimary, typeSecondary, damageSecondary, colorPrimary, colorSecondary
end

data/creaturescripts/scripts/others/login.lua

function Player.sendTibiaTime(self, hours, minutes)
	local msg = NetworkMessage()
	msg:addByte(0xEF)
	msg:addByte(hours)
	msg:addByte(minutes)
	msg:sendToPlayer(self)
	msg:delete()
	return true
end

local events = {
    'ParasiteWarzone',
    'ElementalSpheresOverlords',
    'BigfootBurdenVersperoth',
    'BigfootBurdenWiggler',
    'SvargrondArenaKill',
    'NewFrontierShardOfCorruption',
    'NewFrontierTirecz',
    'ServiceOfYalaharDiseasedTrio',
    'ServiceOfYalaharAzerus',
    'ServiceOfYalaharQuaraLeaders',
    'InquisitionBosses',
    'InquisitionUngreez',
    'KillingInTheNameOfKills',
	'KillingInTheNameOfKillss',
	'KillingInTheNameOfKillsss',
    'MastersVoiceServants',
    'SecretServiceBlackKnight',
    'ThievesGuildNomad',
    'WotELizardMagistratus',
    'WotELizardNoble',
    'WotEKeeper',
    'WotEBosses',
    'WotEZalamon',
    'WarzoneThree',
    'PlayerDeath',
    'AdvanceSave',
    'bossesWarzone',
    'AdvanceRookgaard',
    'PythiusTheRotten',
    'DropLoot',
    'Yielothax',
    'BossParticipation',
    'Energized Raging Mage',
    'Raging Mage',
    'DeathCounter',
    'KillCounter',
    'bless1',
	'lowerRoshamuul',
	'SpikeTaskQuestCrystal',
	'SpikeTaskQuestDrillworm',
	'petlogin',
	'petthink',
	'UpperSpikeKill',
	'MiddleSpikeKill',
	'LowerSpikeKill',
	'BossesForgotten',
	'ReplicaServants',
	'EnergyPrismDeath',
	'AstralPower',
	'BossesKill',
	'TheShattererKill',
	'BossesHero',
	'DragonsKill',
    'deeplingBosses',
    'imbueDamage',
    'theGreatDragonHuntKill',
    'bonusPreyLootKill',
    'bossesMissionCults'
}

local function onMovementRemoveProtection(cid, oldPosition, time)
    local player = Player(cid)
    if not player then
        return true
    end

    local playerPosition = player:getPosition()
    if (playerPosition.x ~= oldPosition.x or playerPosition.y ~= oldPosition.y or playerPosition.z ~= oldPosition.z) or player:getTarget() then
        player:setStorageValue(Storage.combatProtectionStorage, 0)
        return true
    end

    addEvent(onMovementRemoveProtection, 1000, cid, oldPosition, time - 1)
end

function onLogin(player)
	local loginStr = 'Bienvenido a ' .. configManager.getString(configKeys.SERVER_NAME) .. '!'
	if player:getLastLoginSaved() <= 0 then
		loginStr = loginStr .. ' Por favor elige tu atuendo.'
		player:setBankBalance(0)

		if player:getSex() == 1 then
			player:setOutfit({lookType = 128, lookHead = 78, lookBody = 106, lookLegs = 58, lookFeet = 76})
		else
			player:setOutfit({lookType = 136, lookHead = 78, lookBody = 106, lookLegs = 58, lookFeet = 76})
		end

		player:sendTutorial(1)
	else
		if loginStr ~= "" then
			player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
		end

		loginStr = string.format('Tu ultima visita fue en %s.', os.date('%a %b %d %X %Y', player:getLastLoginSaved()))
	end

    player:sendTextMessage(MESSAGE_STATUS_DEFAULT, loginStr)
	player:openChannel(10) -- LOOT CHANNEL

    local playerId = player:getId()

	DailyReward.init(playerId)

    player:loadSpecialStorage()

    --[[-- Maintenance mode
    if (player:getGroup():getId() < 2) then
        return false
    else
	
    end--]]
    if (player:getGroup():getId() >= 4) then
        player:setGhostMode(true)
    end

	-- Outfit bonus
    local bonusCondition = getBonusCondition(player:getOutfit().lookType)
    if bonusCondition then
        player:addCondition(bonusCondition)
    end
	-- Outfit bonus
	
    -- Stamina
    nextUseStaminaTime[playerId] = 1

    -- EXP Stamina
    nextUseXpStamina[playerId] = 1

    -- New Prey
    nextPreyTime[playerId] = {
        [CONST_PREY_SLOT_FIRST] = 1,
        [CONST_PREY_SLOT_SECOND] = 1,
        [CONST_PREY_SLOT_THIRD] = 1
    }

    if (player:getAccountType() == ACCOUNT_TYPE_TUTOR) then
        local msg = [[:: Tutor Rules
            1 *> 3 Warnings you lose the job.
            2 *> Without parallel conversations with players in Help, if the player starts offending, you simply mute it.
            3 *> Be educated with the players in Help and especially in the Private, try to help as much as possible.
            4 *> Always be on time, if you do not have a justification you will be removed from the staff.
            5 *> Help is only allowed to ask questions related to tibia.
            6 *> It is not allowed to divulge time up or to help in quest.
            7 *> You are not allowed to sell items in the Help.
            8 *> If the player encounters a bug, ask to go to the website to send a ticket and explain in detail.
            9 *> Always keep the Tutors Chat open. (required).
            10 *> You have finished your schedule, you have no tutor online, you communicate with some CM in-game or ts and stay in the help until someone logs in, if you can.
            11 *> Always keep a good Portuguese in the Help, we want tutors who support, not that they speak a satanic ritual.
            12 *> If you see a tutor doing something that violates the rules, take a print and send it to your superiors. "
            - Commands -
            Mute Player: / mute nick, 90. (90 seconds)
            Unmute Player: / unmute nick.
            - Commands -]]
        player:popupFYI(msg)
    end

 	-- OPEN CHANNELS
	if table.contains({"Rookgaard", "Dawnport"}, player:getTown():getName())then
		--player:openChannel(7) -- help channel
		player:openChannel(3) -- world chat
		player:openChannel(6) -- advertsing rook main
	else
		--player:openChannel(7) -- help channel
		player:openChannel(3) -- world chat
		player:openChannel(5) -- advertsing main
	end

      --
    -- Rewards
    local rewards = #player:getRewardList()
    if(rewards > 0) then
        player:sendTextMessage(MESSAGE_INFO_DESCR, string.format("You have %d %s in your reward chest.", rewards, rewards > 1 and "rewards" or "reward"))
    end

    -- Update player id
    local stats = player:inBossFight()
    if stats then
        stats.playerId = player:getId()
    end

    -- Events
    for i = 1, #events do
        player:registerEvent(events[i])
    end

	
 	if player:getStorageValue(Storage.combatProtectionStorage) < 1 then
        player:setStorageValue(Storage.combatProtectionStorage, 1)
        onMovementRemoveProtection(playerId, player:getPosition(), 10)
	end

	-- Exp stats
	local staminaMinutes = player:getStamina()
	local Boost = player:getExpBoostStamina()
	if staminaMinutes > 2400 and player:isPremium() and Boost > 0 then
		player:setBaseXpGain(Game.getExperienceStage(player:getLevel())*2) -- 200 = 1.0x, 200 = 2.0x, ... premium account
	elseif staminaMinutes > 2400 and player:isPremium() and Boost <= 0 then
		player:setBaseXpGain(Game.getExperienceStage(player:getLevel())*1.5) -- 150 = 1.0x, 150 = 1.5x, ... premium account
	elseif staminaMinutes <= 2400 and staminaMinutes > 840 and player:isPremium() and Boost > 0 then
		player:setBaseXpGain(Game.getExperienceStage(player:getLevel())*1.5) -- 150 = 1.5x		premium account
	elseif staminaMinutes > 840 and Boost > 0 then
		player:setBaseXpGain(Game.getExperienceStage(player:getLevel())*1.5) -- 150 = 1.5x		free account
	elseif staminaMinutes <= 840 and Boost > 0 then
		player:setBaseXpGain(Game.getExperienceStage(player:getLevel())*1) -- 50 = 0.5x	all players
	elseif staminaMinutes <= 840 then
		player:setBaseXpGain(Game.getExperienceStage(player:getLevel())*0.5) -- 50 = 0.5x	all players
	end

	if player:getClient().version > 1110 then
		local worldTime = getWorldTime()
		local hours = math.floor(worldTime / 60)
		local minutes = worldTime % 60
		player:sendTibiaTime(hours, minutes)
	end
    return true
end

 

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×