Ir para conteúdo

Programando Actions


Ferpa

Posts Recomendados

Este tuto é de autoria de: Zechs_Merkise

bem, sejam criativos, pq o resto eu vou ensinalos aki

getPlayerFood

getPlayerHealth

getPlayerMana

getPlayerLevel

getPlayerMagLevel

getPlayerName

getPlayerPosition

getPlayerSkill

getItemRWInfo

getThingfromPos

doRemoveItem

doPlayerFeed

doPlayerSendCancel

doTeleportThing

doTransformItem

doPlayerSay

doSendMagicEffect

doChangeTypeItem

doSendAnimatedText

doPlayerAddSkillTry

doPlayerAddHealth

doPlayerAddMana

doPlayerAddItem

doPlayerSendTextMessage

doShowTextWindow

doDecayItem

doCreateItem

Update plxs

getPlayerStorageValue

setPlayerStorageValue

doSetItemActionId

doSetItemText

doSetItemSpecialDescription

doCreateItem

doSummonCreature

getTilePzInfo(pos) 1 é pz. 0 nao é pz.

p.s: n coloquei lah em baixo pz pq eh simples voce coloca a posição e se igualar a 1 eh pq eh pz e se igualar a 0 eh pq n eh pz

as funções estao ai, agora vou trabalhar em explica-las

 

sempre sempre o action tem q começar comfunction onUse(cid, item, frompos, item2, topos)endentre o function onUse e end voce coloca os codigos

 

ai esta o basico, agora vamos para o objeto

voce pode usar todas akelas funções sendo q todas tem q dar uma descrição diferente entre ( ) e vou tentar explicar todas

getPlayerFood(uid)

esse uid eh um uniqueid

para declarar um uniqueid voce tem q ir no arquivo do mapa, editalo, procurar as coordenadas no mapa do item e logo em seguida vai ter itemid="id"/> ai voce adicionar no lugar daki itemid="id" uniqueId="um numero bem grande e q voce se lembre"

o uniqueid tb pode ser cid( creature id)

entao o normal do getPlayerFood eh getPlayerFood(cid)

getPlayerHealth(uid)akela explicação do PlayerFood tb serve pra ca, geralmente usado como getPlayerHealth(cid)

getPlayerMana(cid) tb

getPlayerLevel(cid)

getPlayerMagLevel(cid)

getPlayerName(cid)

getPlayerPosition(cid)

getPlayerSkill(cid,skillid)

na PlayerSkill voce coloca cid e coloca skillid( numero da skill)

n estou lembrado, mas por favor alguem do forum edit ai e ajeita :p

getItemRWInfo(uid)

getThingfromPos(pos)

Detalhe...

como declarar uma posição?

se caso for a de um player cujo poderar estar em movimento voce faz assim

playerpos = getPlayerPosicion(cid)

ai no getThing.... vai ficar getThingfromPos(playerpos)

pra declarar a posição de algumm tile voce faz o seguinte

tilepos = {x=x, y=y, z=z}

xyz sao as coordenadas do mapa

e quando voce for chamar a função getThingfromPos do tile voce coloca getThingfromPos(tilepos)

doRemoveItem(uid,number)

bem esta função remove um id UNICO, pois se voce colocar um idnormal ele podera remover qualquer do mapa q esteja a sua vista

doPlayerFeed(uid,food)n sei como funciona, n sei se o uid pod ser trocado por cid, nunca usei isso :p

doPlayerSendCancel(cid,texto)

sabe quando o cara anda contra a parece a aparece a mensagem, sorry you cant walk on it ou alguma coisa parecida, pois eh, ele faz aparecer uma mensagem assim.

pra funcionar voce coloca

doPlayerSendCancel(cid,"o texto entre aspas")

doTeleportThing(uid,newpos)

a variavel do newpos eu ja ensinei antes como declara, eh so usar a mente

o uid(uniqueid) voce pode usar como uniqueid mesmo e como cid, pois isso depende muito, se voce quiser teleportar um item, voce usa uid e se quiser teleportar player usa cid :D

doTransformItem(uid,novo item id)bem, esse caso eh exclusivo como o doRemove, eh obrigatorio q seja um uniqueid, pois ele poderá tranformar qualquer um do mapa, isso depende mto. e o novo id eh o id do item q vai aparecer no lugar do uid

doPlayerSay(uid,text,type)

nunca testei mas da pra ter uma ideia

deve ser o seguinte. so cid no lugar do uid, o testo entre aspas "" e o type deve ser alguma coisa q n sei :D, como funciona?

doPlayerSay(cid,"Eu Sou ######",10)

no type eu coloquei 10 mas n sei se eh correto, como ja disse nunca usei essa função. o q acontece? o cara diz eu sou ###### sem querer

lol

doSendMagicEffect(uid,position,type)

uid acho q eh cid, position tem q declarar, type voce vai em spells\libs\lib.lua lah tem alguns types, dai voce coloca representados pelos numeros q tem lah :D

doChangeTypeItem(uid,new_type)n faço menor ideia, se alguem do forum souber, fix plxs

doSendAnimatedText(uid,text,color)uid ai eh cid, text entree aspas "", color voce ve no spell\libs\lib tarararara, eu uso geralmente entre 15 e 120 no lugar do color :D

doPlayerAddSkillTry(uid,skillid,number)

uid ai eh cid, skillid eh o numero representante da skill, e number eh a quantidade de skills trys q acresenta, bastante util pra fazer club ring e etc

doPlayerAddHealth(cid,health)n tem por onde, esse ai eh obrigado ser cid, health eh a quantidade de life q almenta.

doPlayerAddMana(cid,mana)mesma coisa do health

doPlayerAddItem(uid,itemid,numero ou type)

esse ai o uid tem q ser cid, itemid id do item, numero ou type voce colocar quantidade de itens q tem q ser adicionado, se for o caso do itemid for = flask fazio entao o numero vai ser = type, exemplo type = 7 dai vai vim um mana fluid

doPlayerSendTextMessage(uid,messageclasses,message)uid tem q ser cid, messageclasses voce ve no libs lah do spells e tem q ser representado pelo numero e message entre ""

doShowTextWindow(uid,maxlen,canwrite)nunca usei essa função, mas acho q pode ser uid e cid, maxlen = numero maximo de letras, canwrite n sei mas acho q pode ser yes ou no ou entao 0 ou 1, sei lah :D

doDecayItem(uid)

acho q tem q ser uid msm, tipow, essa função eh usada no exemplo. torch pegando fogo entrei ai dá o decay e fica pela metade da o decay fica pequena e apaga

doCreateItem(itemid, numero ou type, posicion)

itemid nem precisa fala, numero ou type = o outro action lah de cima q n lembro qual foi :D e a posicion tem q declarar.

Atualização

doSetItemSpecialDescription(uid,desc)

Da uma descrição diferente a um item

doSetItemText(uid,text)

Adiciona um texto ao item

doSetItemActionId(uid,actionid)

Adiciona um uid(actionid) a um item dependendo da hora em q voce ativar essa função

getPlayerStorageValue(uid,valueid)

FUNÇÃO IMPORTANTE!!! faz quest usando essa função...

Maiores informações, vide o post de Sarietip, Como fazer quest( Tutorial), ele varifica se há certo valor no storage do player.xml

setPlayerStorageValue(uid,valueid, newvalue)

ele adicionar certo valor ao storeage do player.xml

doSummonCreature(name, position)

função feita pra quando actionar o lua do action ele sumonar monstros

comentem pra mim ajudar e ajeitar o topico

hehehe, esqueci de colocar como colocar no actions.xml para da load no script sendo o item de rosto um uniqueid

<actions uniqueid="uid" script="nome.lua"/>

Lembrando que o Tuto foi inicialmente feito para o HotServ... + pode ser facilmente adaptado para outras versões de OT.

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...
  • 2 months later...
  • 3 weeks later...

Legalzinhu, até que esplico bem, mas não abordo a questão de como programar os comandos com exemplos...

e outra... escolhe outra cor cara!

PQ AZUL ESCURO!!!

pra le com um fundo escuro, eh loucura! tem que fica selecionando toda hora... UAEHeuaHUAEHAE

VALEW! FUIS!

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...
  • 1 year later...
×
×
  • Criar Novo...