Ir para conteúdo
Entre para seguir isso  
the Gray Fox

[Nível=Fácil] Tutorial para iniciantes

Recommended Posts

the Gray Fox    0
the Gray Fox

Eae gente! Voltei aki e vou postar e traduzir um tuto que li no OTFans. Eu já tinha feito uns tutos similares a esse,

mas ficaram inativos e expiraram,

então,

lá vai!

 

Olá querido leitor,

 

Esse tutorial mostrará o começo da edição de LUA

Eu vou dividir o tutorial em partes para que seja mais fácil e tentarei fazer com que todos entendam

 

PARTE I - Funções

 

Funções são basicamente apenas as coisas que dizem ao servidor o que você quer que aconteça nesse script.

Existem várias funções, mas você deve separá-las em 2 grupos.

Grupo 1: As "Funções primárias", aquelas funções que são sempre declaradas no comecinho do script e sempre dizem que tipo de ação será executada.

Grupo 2: As "Funções secundárias", aquelas funções que são sempre declaradas abaixo das "Funções primárias" mas são tão importantes quanto as "primárias".

Agora vamos para os detalhes.

Vamos começar com as funções primárias:

Como eu disse, essas são as funções que tem sempre que estar no topo. Vamos aprofundar nos detalhes para que você entenda o porquê disso.

Lista de "Funções Primárias"(NOTA: As funções podem variar de servidor para servidor)

Básicas:- Serão explicadas nesse tutorial

 

function onUse(cid, item, fromPosition, itemEx, toPosition)

function onStepIn(cid, item, frompos, item2, topos)

function onStepOut(cid, item, frompos, item2, topos)

function onSay(cid, words, param)

function onEquip(cid, item, slot)

function onDeEquip(cid, item, slot)

function onAddItem(moveitem, tileitem, position)

Avançadas:- Serão explicadas em outro tutorial

 

function onThink(cid)

function onLogin(cid)

function onLogout(cid)

function onKill(cid,target)

function onDeath(corpse,killer)

Essas são as funções que os servidores atualizados possuem.

Vamos explicar cada função agora:

function onUse(cid, item, fromPosition, itemEx, toPosition)

Como você pode fácilmente perfceber essa função faz algo acontecer quando você usa um item.

Exemplo:

você puxa uma alavanca e uma parede aparece.

-*-*-

function onStepIn(cid, item, frompos, item2, topos)

Essa fará algo acontecer quando você pisa em um piso especificado. É, você entendeu certo! Essa função será APENAS executada se você pisar num piso.

Exemplo:

Você pisa num lugar e uma mensagem aparece.

-*-*-

function onStepOut(cid, item, frompos, item2, topos)

Essa é exatamente o oposto de "onStepIn", e APENAS funcionará quando você sai de cima do piso especificado.

Exemplo:

Você sai de um piso e é teletransportado para um lugar.

-*-*-

function onSay(cid, words, param)

Apenas acontecerá quando um jogador dizer a palavra especificada que executará esse script.

Exemplo:

O jogador diz "!Quest" para começar uma quest.

-*-*-

function onEquip(cid, item, slot)

Para essa função funcionar você deve por um item em um dos slots para equipamentos.

Exemplo:

Você equipa uma Crown Armor e um efeito é mostrado.

-*-*-

function onDeEquip(cid, item, slot)

O inverso do "onEquip". Executará um script quando você desequipar um item.

Exemplo:

Você retira uma Crown Armor, exibindo um efeito.

-*-*-

function onAddItem(moveitem, tileitem, position)

Essa é a função menos usada, mas é realmente útil. Você deve por um item em um lugar especificado para que o script funcione.

Exemplo:

Você põe um machado numa mesa de sacrifício: o machado some e outro item aparece.

-*-*-

Essa foi uma pequena explicação das "Funções primárias".

Você deve saber agora o que cada função faz.

Lista de "Funções secundárias": - Lista de funções do TFS 0.4

 

GET:

getCreatureHealth(cid)

getCreatureMaxHealth(cid)

getCreatureMana(cid)

getCreatureMaxMana(cid)

getCreatureMaster(cid)

getCreatureSummons(cid)

getCreatureOutfit(cid)

getCreaturePosition(cid)

getCreatureName(cid)

getCreatureSpeed(cid)

getCreatureBaseSpeed(cid)

getCreatureTarget(cid)

getCreatureByName(name)

getCreatureCondition(cid, condition)

getMonsterTargetList(cid)

getMonsterFriendList(cid)

getPlayerLossSkill(cid)

getPlayerLossPercent(cid, lossType)

getPlayerGUIDByName(name)

getPlayerNameByGUID(guid)

getPlayerFood(cid)

getPlayerLevel(cid)

getPlayerExperience(cid)

getPlayerMagLevel(cid)

getPlayerSpentMana(cid)

getPlayerAccess(cid)

getPlayerSkillLevel(cid, skillid)

getPlayerSkillTries(cid, skillid)

getPlayerTown(cid)

getPlayerVocation(cid)

getPlayerRequiredMana(cid, magicLevel)

getPlayerRequiredSkillTries(cid, skillId, skillLevel)

getPlayerItemCount(cid, itemid)

getPlayerSoul(cid)

getPlayerFreeCap(cid)

getPlayerLight(cid)

getPlayerSlotItem(cid, slot)

getPlayerWeapon(cid[, ignoreAmmo])

getPlayerItemById(cid, deepSearch, itemId[, subType])

getPlayerDepotItems(cid, depotid)

getPlayerGuildId(cid)

getPlayerGuildName(cid)

getPlayerGuildRank(cid)

getPlayerGuildNick(cid)

getPlayerGuildLevel(cid)

getPlayerSex(cid)

getPlayerLookDir(cid)

getPlayerStorageValue(uid, valueid)

getPlayerGUID(cid)

getPlayerFlagValue(cid, flag)

getPlayerCustomFlagValue(cid, flag)

getPlayerPromotionLevel(cid)

getPlayerGroupId(cid)

getPlayerLearnedInstantSpell(cid, name)

getPlayerInstantSpellCount(cid)

getPlayerInstantSpellInfo(cid, index)

getPlayerSex(cid)

getPlayerBlessing(cid, blessing)

getPlayerStamina(cid)

getPlayerNoMove(cid)

getPlayerExtraExpRate(cid)

getPlayerPartner(cid)

getPlayerParty(cid)

getPlayerPremiumDays(cid)

getPlayerSkullType(cid)

getPlayerBalance(cid)

getPlayersByAccountNumber(accountNumber)

getPlayersByIP(ip[, mask = 0xFFFFFFFF])

getInstantSpellInfoByName(cid, name)

getInstantSpellWords(name)

getPartyMembers(lid)

getAccountNumberByName(name)

getIPByName(name)

getHouseOwner(houseid)

getHouseName(houseid)

getHouseEntry(houseid)

getHouseRent(houseid)

getHousePrice(houseid)

getHouseTown(houseid)

getHouseAccessList(houseid, listid)

getHouseByPlayerGUID(playerGUID)

getHouseTilesSize(houseid)

getItemRWInfo(uid)

getItemDescriptionsById(itemid)

getItemNameById(itemid)

getItemPluralNameById(itemid)

getItemIdArticleById(itemid)

getItemWeightById(itemid, count[, precise])

getItemDescriptions(uid)

getItemName(uid)

getItemPluralName(uid)

getItemIdArticle(uid)

getItemAttack(uid)

getItemExtraAttack(uid)

getItemDefense(uid)

getItemExtraDefense(uid)

getItemArmor(uid)

getItemAttackSpeed(uid)

getItemHitChance(uid)

getItemIdByName(name)

getContainerSize(uid)

getContainerCap(uid)

getContainerCapById(itemid)

getContainerItem(uid, slot)

getDepotId(uid)

getTileItemById(pos, itemId[, subType])

getTileItemByType(pos, type)

getTileThingByPos(pos)

getTilePzInfo(pos)

getTileHouseInfo(pos)

getClosestFreeTile(cid, targetpos)

getThingfromPos(pos)

getThing(uid)

getThingPos(uid)

getTemplePositionByName(townName)

getTemplePositionById(townId)

getTownName(townId)

getWorldType()

getWorldTime()

getWorldLight()

getWorldCreatures(type) //0 players, 1 monsters, 2 npcs, 3 all

getWorldUpTime()

getOnlinePlayers()

getGlobalStorageValue(valueid)

getSpectators(centerPos, rangex, rangey, multifloor)

getTopCreature(pos)

getVocationInfo(id)

getGuildId(guildName)

getFluidSourceType(type)

getConfigFile()

SET:

setCreatureMaxHealth(cid, health)

setCreatureMaxMana(cid, mana)

setPlayerStorageValue(uid, valueid, newvalue)

setPlayerGroupId(cid, newGroupId)

setPlayerPromotionLevel(cid, level)

setPlayerStamina(cid, minutes)

setPlayerExtraExpRate(cid, value)

setPlayerPartner(cid, guid)

setHouseOwner(houseid, ownerGUID)

setHouseAccessList(houseid, listid, listtext)

setItemName(uid)

setItemPluralName(uid)

setItemIdArticle(uid)

setItemAttack(uid, attack)

setItemExtraAttack(uid, extraattack)

setItemDefense(uid, defense)

setItemArmor(uid, armor)

setItemExtraDefense(uid, extradefense)

setItemAttackSpeed(uid, attackspeed)

setItemHitChance(uid, hitChance)

setCombatArea(combat, area)

setCombatCondition(combat, condition)

setCombatParam(combat, key, value)

setConditionParam(condition, key, value)

setCombatCallBack(combat, key, function_name)

setCombatFormula(combat, type, mina, minb, maxa, maxb)

setConditionFormula(combat, mina, minb, maxa, maxb)

setGlobalStorageValue(valueid, newvalue)

setWorldType(type)

DO:

doCreatureAddHealth(cid, health)

doCreatureAddMana(cid, mana)

doCreatureSetDropLoot(cid, doDrop)

doCreatureChangeOutfit(cid, outfit)

doCreatureSay(cid, text, type)

doSetCreatureLight(cid, lightLevel, lightColor, time)

doSetCreatureOutfit(cid, outfit, time)

doRemoveCreature(cid)

doMoveCreature(cid, direction)

doSummonCreature(name, pos)

doConvinceCreature(cid, target)

doChallengeCreature(cid, target)

doChangeSpeed(cid, delta)

doMonsterChangeTarget(cid)

doSetMonsterTarget(cid, target)

doSetMonsterOutfit(cid, name, time)

doPlayerBroadcastMessage(cid, message[, type])

doPlayerSetSex(cid, newSex)

doPlayerSetTown(cid, townid)

doPlayerSetVocation(cid,voc)

doPlayerRemoveItem(cid, itemid, count[, subtype])

doPlayerAddExp(cid, exp)

doPlayerSetGuildId(cid, id)

doPlayerSetGuildRank(cid, rank)

doPlayerSetGuildNick(cid, nick)

doPlayerAddOutfit(cid,looktype, addons)

doPlayerRemoveOutfit(cid,looktype, addons)

doPlayerSetLossPercent(cid, lossType, newPercent)

doPlayerSetLossSkill(cid, doLose)

doPlayerAddSkillTry(cid, skillid, n)

doPlayerAddSpentMana(cid, amount)

doPlayerAddSoul(cid, soul)

doPlayerAddItem(uid, itemid[, count/subtype[, canDropOnMap]])

doPlayerAddItemEx(cid, uid[, canDropOnMap])

doPlayerSendTextMessage(cid, MessageClasses, message)

doPlayerAddMoney(cid, money)

doPlayerRemoveMoney(cid, money)

doPlayerWithdrawMoney(cid, money)

doPlayerDepositMoney(cid, money)

doPlayerTransferMoneyTo(cid, target, money)

doPlayerPopupFYI(cid, message)

doPlayerSendTutorial(cid, id)

doPlayerAddMapMark(cid, pos, type[, description])

doPlayerAddPremiumDays(cid, days)

doPlayerAddBlessing(cid, blessing)

doPlayerAddStamina(cid, minutes)

doPlayerSetNoMove(cid, cannotMove)

doPlayerResetIdleTime(cid)

doPlayerLearnInstantSpell(cid, name)

doPlayerFeed(cid, food)

doPlayerSendCancel(cid, text)

doPlayerSendDefaultCancel(cid, ReturnValue)

doCreateItem(itemid, type/count, pos)

doCreateItemEx(itemid[, count/subtype])

doAddContainerItemEx(uid, virtuid)

doAddContainerItem(uid, itemid[, count/subtype])

doChangeTypeItem(uid, newtype)

doDecayItem(uid)

doRemoveItem(uid[, n])

doTransformItem(uid, toitemid[, count/subtype])

doSetItemActionId(uid, actionid)

doSetItemText(uid, text)

doSetItemSpecialDescription(uid, desc)

doSetItemOutfit(cid, item, time)

doTileAddItemEx(pos, uid)

doAddCondition(cid, condition)

doRemoveCondition(cid, type)

doAreaCombatHealth(cid, type, pos, area, min, max, effect)

doTargetCombatHealth(cid, target, type, min, max, effect)

doAreaCombatMana(cid, pos, area, min, max, effect)

doTargetCombatMana(cid, target, min, max, effect)

doAreaCombatCondition(cid, pos, area, condition, effect)

doTargetCombatCondition(cid, target, condition, effect)

doAreaCombatDispel(cid, pos, area, type, effect)

doTargetCombatDispel(cid, target, type, effect)

doCombat(cid, combat, param)

doTeleportThing(cid, newpos[, pushmove])

doCreateTeleport(itemid, topos, createpos)

doSendMagicEffect(pos, type[, player])

doSendDistanceShoot(frompos, topos, type)

doSendAnimatedText(pos, text, color)

doShowTextDialog(cid, itemid, text)

doRelocate(pos, posTo)

doBroadcastMessage(message, type)

IS:

isCreature(cid)

isPlayer(cid)

isPlayerPzLocked(cid)

isPlayerGhost(cid)

isItemStackable(itemid)

isItemRune(itemid)

isItemDoor(itemid)

isItemLevelDoor(itemid)

isItemContainer(itemid)

isItemFluidContainer(itemid)

isItemMovable(itemid)

isContainer(uid)

isCorpse(uid)

isMovable(uid)

isSightClear(fromPos, toPos, floorCheck)

isInArray({array}, value)

Outras:

registerCreatureEvent(uid, eventName)

createCombatArea({area}[, {exArea}])

createConditionObject(type)

addDamageCondition(condition, rounds, time, value)

addOutfitCondition(condition, lookTypeEx, lookType, lookHead, lookBody, lookLegs, lookFeet)

createCombatObject()

numberToVariant(number)

stringToVariant(string)

positionToVariant(pos)

targetPositionToVariant(pos)

variantToNumber(var)

variantToString(var)

variantToPosition(var)

canPlayerLearnInstantSpell(cid, name)

queryTileAddThing(uid, pos[, flags])

canPlayerWearOutfit(cid, looktype, addons)

executeRaid(name)

saveServer()

cleanMap()

shutdown()

addEvent(callback, delay, ...)

stopEvent(eventid)

debugPrint(text)

hasProperty(uid)

DB Table:

db.executeQuery(query)

db.storeQuery(query)

db.escapeString(str)

db.escapeBlob(s, length)

db.stringComparisonOperator()

Result Table:

result.getDataInt(resId, s)

result.getDataLong(resId, s)

result.getDataString(resId, s)

result.getDataStream(resId, s, length)

result.next(resId)

result.free(resId)

Bit Table:

#bit.cast

bit.bnot(n)

bit.band(type, n)

bit.bor(type, n)

bit.bxor(type, n)

bit.lshift(type, n)

bit.rshift(type, n)

#bit.arshift

#bit.ucast

bit.ubnot(n)

bit.uband(type, n)

bit.ubor(type, n)

bit.ubxor(type, n)

bit.ulshift(type, n)

bit.urshift(type, n)

#bit.uarshift

-*-*-*-*-*-*-

 

É isso ae gente. Créditos à Evil Hero,usuário do OTFans, e um pouquinho a mim pela tradução. Breve a parte 2 dele. Brigadow! ;*

Compartilhar este post


Link para o post
Mock    32
Mock

Esta bem esplicado para a parte de funçoes :P

 

Aprovado

Compartilhar este post


Link para o post
Pandoraaa    0
Pandoraaa

Mock

Não sabia que virou script

foi bem merecido , voçe e genio nessa area

 

the Gray Fox

Tutorial muito bem explicado cara

Continue assim , me ajudou muito

Parabens

Compartilhar este post


Link para o post
PoSo    0
PoSo

Cara, são muitas funções =O

Com certeza vo olhar esta lista mais vezes !

Grande Ajuda.

Abraços

Compartilhar este post


Link para o post
Iago Felipe    5
Iago Felipe

affe meu deus que r0x essa lista

 

mais alguem pode me dar algumas aulinhas particulares?

 

pls postem PM se alguem puder me ajudar

Compartilhar este post


Link para o post
myros    0
myros

deu pra intende certinho, vlws, bem explicado.

Compartilhar este post


Link para o post
J3@n    0
J3@n

nota 0.5 pra vc

nota 9.5 pro Evil Hero

 

tutorial d+ do Evil, pena q sempre tem alguem passando pra outros foruns -.-"

Compartilhar este post


Link para o post
Combine    0
Combine

Pior cara...

Eles passam pra outros Foruns e ainda roubam créditos! :P

 

Mas ta muito bão isso! ;D

Compartilhar este post


Link para o post
Dank    0
Dank

Muito bom seu tutorial, the Gray Fox.

 

Bem trabalhado, com formatação alternando, assim facilitando a leitura, e o principal, bem explicado.

 

Está de parabéns amigo. Me ajudou muito e provavelmente ainda vai me ajudar mais. Sou iniciante nesta área..

 

Vou até adicionar nos favoritos ;)

 

Abraço .

Compartilhar este post


Link para o post
hell_k9    0
hell_k9

Nossa..

que tamanho

o kara deve fikar com

móoo priguisa de ler isso

tudo

 

^^

Compartilhar este post


Link para o post
gslayeryourotsv9    0
gslayeryourotsv9

não entendi nada

Compartilhar este post


Link para o post
Mock    32
Mock

ps:

avisando que essas funções são do The forgotten server.

Compartilhar este post


Link para o post
ions_29a    0
ions_29a

topic p guardar nos favoritos e sempre dar uma espiadela!

 

vlws!

Compartilhar este post


Link para o post
Syberion    0
Syberion

Eu gostei. Vou atá salvar isso no pc. XD

Pra dar umas olhadas de veiz enquando.

Compartilhar este post


Link para o post
biel_s2_juh    0
biel_s2_juh

Parabéns ! ajudou muita gente inclusive a min *.* , e vai continuar ajudando , é uma lista e tanto ... deu um baita trabalho !

Obrigadao ! :D

 

se nao estou errado , podemos usar o seu exemplo de tirar itens , para executar 1 ação no caso 1 magia certo ?

Compartilhar este post


Link para o post
ushoriuma    0
ushoriuma

sao funçoes de mais e n consegui decorar por isso anotei

quem diria que e tao dificil assim mexer com scripts!

ficou be explicado...

aprovado!xD

Compartilhar este post


Link para o post
FullAcid    0
FullAcid

pqp eh mta funçao nem sei por onde começar tem como me passar um tutorial de como teleportar pessoas com lavanca sem colocar itens na mesa de sacrificio, usando só um piso q afunda?

Compartilhar este post


Link para o post
Llol    0
Llol

Muito bom!!!

 

Mas eu queria umas aulas particulares!!!!

 

quem quer me ajuda plxx me add msn: [email protected]!

Compartilhar este post


Link para o post
Cesinha.verdao    0
Cesinha.verdao

Otimo tutorial para iniciantes para....vai ajudar muita gente!!!

Compartilhar este post


Link para o post
aragion    0
aragion

Bom pra quem ta começando a jogar...

e vlws pelo tuto...

 

e bom pra ele aprender a n cometer erros..

 

coelhojackew1.gif

Compartilhar este post


Link para o post
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×