Histórico de Curtidas
-
thalia recebeu reputação de allanzinh em [LUA] Lista de funções[LUA] Lista De Funções
Esta lista contêm todas ou quase todas as funções LUA do The Forgotten Server
1. Funções #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) getCreatureSkullType(cid) getCreatureCondition(cid, condition[, subId]) getCreatureNoMove(cid) getMonsterInfo(name) getMonsterHealingSpells(name) getMonsterAttackSpells(name) getMonsterLootList(name) getMonsterTargetList(cid) getMonsterFriendList(cid) getPlayerByNameWildcard(name~) getPlayerLossSkill(cid) getPlayerLossPercent(cid, lossType) getPlayerGUIDByName(name[, multiworld]) getPlayerNameByGUID(guid[, multiworld]) getPlayerFood(cid) getPlayerLevel(cid) getPlayerExperience(cid) getPlayerMagLevel(cid[, ignoreBuffs]) 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) getPlayerAccountId(cid) getPlayerAccount(cid) getPlayerIp(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) getPlayerExtraExpRate(cid) getPlayerPartner(cid) getPlayerParty(cid) getPlayerPremiumDays(cid) getPlayerBalance(cid) getPlayerRedSkullTicks(cid) getPlayerRates(cid) getInstantSpellInfo(cid, name) getPlayersByAccountId(accountNumber) getPlayersByIp(ip[, mask = 0xFFFFFFFF]) getPlayersOnline() getPartyMembers(lid) getAccountIdByName(name) getAccountByName(name) getAccountIdByAccount(accName) getAccountByAccountId(accId) getIpByName(name) getItemRWInfo(uid) getItemDescriptionsById(itemid) getItemWeightById(itemid, count[, precise]) getItemDescriptions(uid) getItemWeight(uid[, precise]) getItemAttack(uid) getItemExtraAttack(uid) getItemDefense(uid) getItemExtraDefense(uid) getItemArmor(uid) getItemAttackSpeed(uid) getItemHitChance(uid) getItemShootRange(uid) getItemIdByName(name[, reportError]) getItemLevelDoor(itemid) getItemWeaponType(uid) getFluidSourceType(type) getContainerSize(uid) getContainerCap(uid) getContainerCapById(itemid) getContainerItem(uid, slot) getDepotId(uid) getTileItemById(pos, itemId[, subType]) getTileItemByType(pos, type) getTileThingByPos(pos) getTileInfo(pos) getTopCreature(pos) getClosestFreeTile(cid, targetpos[, extended[, ignoreHouse]]) getThingFromPos(pos) getThing(uid) getThingPos(uid) getHouseOwner(houseid) getHouseName(houseid) getHouseEntry(houseid) getHouseRent(houseid) getHousePrice(houseid) getHouseTown(houseid) getHouseAccessList(houseid, listid) getHouseByPlayerGUID(playerGUID) getHouseFromPos(pos) getHouseTilesSize(houseid) getTownId(townName) getTownName(townId) getTownTemplePosition(townId) getTownHouses(townId) getWorldType() getWorldTime() getWorldLight() getWorldCreatures(type) //0 players, 1 monsters, 2 npcs, 3 all getWorldUpTime() getHighscoreString(skillId) getVocationInfo(id) getGuildId(guildName) getGuildMotd(guildId) getSpectators(centerPos, rangex, rangey, multifloor) getSearchString(fromPosition, toPosition[, fromIsCreature[, toIsCreature]]) getWaypointPosition(name) getGameState() getNotationsCount(accId) getBanData(value) getBanList(type[, value]) getBanReason(id) getBanAction(id[, ipBanishment]) getGlobalStorageValue(valueid) getExperienceStage(level) getConfigFile() getConfigValue(key) getLogsDir() getDataDir() 2. Funções #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) setItemArticle(uid) setItemAttack(uid, attack) setItemExtraAttack(uid, extraattack) setItemDefense(uid, defense) setItemArmor(uid, armor) setItemExtraDefense(uid, extradefense) setItemAttackSpeed(uid, attackspeed) setItemHitChance(uid, hitChance) setItemShootRange(uid, shootRange) 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) 3. Funções #do doCreatureAddHealth(cid, health[, force]) doCreatureAddMana(cid, mana) doCreatureSetDropLoot(cid, doDrop) doCreatureSetSkullType(cid, skull) doCreatureSetLookDir(cid, dir) doCreatureChangeOutfit(cid, outfit) doCreatureSay(cid, text, type[, pos]) doCreatureSetNoMove(cid, cannotMove) doSetCreatureLight(cid, lightLevel, lightColor, time) doSetCreatureOutfit(cid, outfit, time) doRemoveCreature(cid) doMoveCreature(cid, direction) doConvinceCreature(cid, target) doChallengeCreature(cid, target) doChangeSpeed(cid, delta) doSummonMonster(name, pos) doCreateMonster(name, pos) doMonsterChangeTarget(cid) doMonsterSetTarget(cid, target) doCreateNpc(name, pos) 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) doPlayerSetRedSkullTicks(cid, amount) 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) doPlayerSendChannelMessage(cid, author, message, SpeakClasses, channel) doPlayerSendToChannel(cid, targetId, SpeakClasses, message, channel[, time]) 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) doPlayerResetIdleTime(cid) doPlayerLearnInstantSpell(cid, name) doPlayerUnlearnInstantSpell(cid, name) doPlayerFeed(cid, food) doPlayerSendCancel(cid, text) doPlayerSendDefaultCancel(cid, ReturnValue) doPlayerSetExperienceRate(cid, value) doPlayerSetMagicRate(cid, value) doPlayerSetSkillRate(cid, skill, value) doPlayerJoinParty(cid, lid) doPlayerSendOutfitWindow(cid) 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[, writer[, date]]) doSetItemSpecialDescription(uid, desc) doSetItemOutfit(cid, item, time) doTileAddItemEx(pos, uid) doTileQueryAdd(uid, pos[, flags]) doAddCondition(cid, condition) doRemoveCondition(cid, type[, subId]) doRemoveConditions(cid[, onlyPersistent]) 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[, creature]) doSendDistanceShoot(frompos, topos, type[, creature]) doSendAnimatedText(pos, text, color[, creature]) doShowTextDialog(cid, itemid, text) doRelocate(pos, posTo) doBroadcastMessage(message, type) doWaypointAddTemporial(name, pos) doSetGameState(id) doAddIpBanishment(ip[, length[, comment[, admin]]]) doAddNamelock(name[, reason[, action[, comment[, admin]]]]) doAddBanishment(accId[, length[, reason[, action[, comment[, admin]]]]]) doAddDeletion(accId[, reason[, action[, comment[, admin]]]]]) doAddNotation(accId[, reason[, action[, comment[, admin]]]]]) doRemoveIpBanishment(ip[, mask]) doRemoveNamelock(name) doRemoveBanisment(accId) doRemoveDeletion(accId) doRemoveNotations(accId) doSaveServer() doReloadInfo() doCleanHouse(houseId) doCleanMap() doRefreshMap() 4. Funções #is isCreature(cid) isMonster(uid) isNpc(uid) isPlayer(cid) isPlayerPzLocked(cid) isItemStackable(itemid) isItemRune(itemid) isItemMovable(itemid) isItemDoor(itemid) isItemContainer(itemid) isItemFluidContainer(itemid) isContainer(uid) isCorpse(uid) isMovable(uid) isSightClear(fromPos, toPos, floorCheck) isIpBanished(ip[, mask]) isPlayerNamelocked(name) isAccountBanished(accId) isAccountDeleted(accId) isInArray({array}, value) 5. Outras funções registerCreatureEvent(uid, eventName) createCombatArea({area}[, {exArea}]) createConditionObject(type[, ticks[, buff[, subId]]]) 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) canPlayerWearOutfit(cid, looktype, addons) executeRaid(name) addEvent(callback, delay, ...) stopEvent(eventid) hasProperty(uid) 6. Funções #db table db.executeQuery(query) db.storeQuery(query) db.escapeString(str) db.escapeBlob(s, length) db.stringComparisonOperator() 7. Funções #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) 8. Funções #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 9. Funções iguais table.getPos = table.find doSetCreatureDropLoot = doCreatureSetDropLoot doPlayerSay = doCreatureSay doPlayerAddMana = doCreatureAddMana playerLearnInstantSpell = doPlayerLearnInstantSpell doPlayerRemOutfit = doPlayerRemoveOutfit pay = doPlayerRemoveMoney broadcastMessage = doBroadcastMessage getPlayerName = getCreatureName getPlayerPosition = getCreaturePosition getCreaturePos = getCreaturePosition creatureGetPosition = getCreaturePosition getPlayerMana = getCreatureMana getPlayerMaxMana = getCreatureMaxMana hasCondition = getCreatureCondition isMoveable = isMovable isItemMoveable = isItemMovable saveData = saveServer savePlayers = saveServer getPlayerSkill = getPlayerSkillLevel getPlayerSkullType = getCreatureSkullType getAccountNumberByName = getAccountIdByName getIPByName = getIpByName getPlayersByIP = getPlayersByIp getThingfromPos = getThingFromPos getPlayersByAccountNumber = getPlayersByAccountId getIPByPlayerName = getIpByName getPlayersByIPNumber = getPlayersByIp getAccountNumberByPlayerName = getAccountIdByName convertIntToIP = doConvertIntegerToIp convertIPToInt = doConvertIpToInteger queryTileAddThing = doTileQueryAdd getTileHouseInfo = getHouseFromPos executeRaid = doExecuteRaid saveServer = doSaveServer cleanHouse = doCleanHouse cleanMap = doCleanMap shutdown = doShutdown mayNotMove = doCreatureSetNoMove doPlayerSetNoMove = doCreatureSetNoMove getPlayerNoMove = getCreatureNoMove getConfigInfo = getConfigValue 10. Funções #lua-made doPlayerGiveItem(cid, itemid, amount, subType) doPlayerTakeItem(cid, itemid, amount) doPlayerBuyItem(cid, itemid, count, cost, charges) doPlayerBuyItemContainer(cid, containerid, itemid, count, cost, charges) doPlayerSellItem(cid, itemid, count, cost) isInRange(pos, fromPos, toPos) isPremium(cid) getMonthDayEnding(day) getMonthString(m) getArticle(str) isNumber(str) getDistanceBetween(firstPosition, secondPosition) doPlayerAddAddons(cid, addon) isSorcerer(cid) isDruid(cid) isPaladin(cid) isKnight(cid) isRookie(cid) getDirectionTo(pos1, pos2) getPlayerLookPos(cid) getPosByDir(fromPosition, direction, size) getPlayerMoney(cid) doPlayerWithdrawAllMoney(cid) doPlayerDepositAllMoney(cid) doPlayerTransferAllMoneyTo(cid, target) playerExists(name) getTibiaTime() doWriteLogFile(file, text) isInArea(pos, fromPos, toPos) getExperienceForLevel(lv) doMutePlayer(cid, time) getPlayerVocationName(cid) getPromotedVocation(vid) doPlayerRemovePremiumDays(cid, days) getPlayerMasterPos(cid) getItemNameById(itemid) getItemPluralNameById(itemid) getItemArticleById(itemid) getItemName(uid) getItemPluralName(uid) getItemArticle(uid) getItemText(uid) getItemWriter(uid) getItemDate(uid) getTilePzInfo(pos) getTileZoneInfo(pos) debugPrint(text) doShutdown() doSummonCreature(name, pos) getOnlinePlayers() getPlayerByName(name) isPlayerGhost(cid) getPlayerFrags(cid) getPartyLeader(cid) isInParty(cid) isPrivateChannel(channelId) doConvertIntegerToIp(int, mask) doConvertIpToInteger(int, mask) getBooleanFromString(str) doCopyItem(item, attributes) exhaustion.check(cid, storage) exhaustion.get(cid, storage) exhaustion.set(cid, storage, time) exhaustion.make(cid, storage, time) table.find(table, value) table.isStrIn(txt, str) table.countElements(table, item) table.getCombinations(table, num) string.split(str) string.trim(str) string.explode(str, sep)
OBS: 90% Créditos ao Sukx e 10% a mim por trazer ao TibiaKing e formatar o texto.
-
thalia recebeu reputação de victor8082 em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de Jpeedro em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de Whyzin em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de LeoTK em [Action/Quest] Uma quest aleatória!IAE' - Bom, essa quest funciona assim: Você abre o baú, e você ganha uns dos itens aletoriamente.
Criador = thalia
Postado por = thalia
Créditos = thalia
Meu nick = thalia
Sem mais delongas, o script:
-->Crie um arquivo em data/actions/scripts com o nome de quest_random.lua e cole este código dentro:
-- Script by: thalia. local randomizar = { [1] = {name="demon armor", id = 2494, qnt = 1}, [2] = {name="demon legs", id = 2495, qnt = 1}, [3] = {name="demon helmet", id = 2493, qnt = 2}, [4] = {name="infernal bolt", id = 6529, qnt = 100}, } function onUse(cid, item, item2, topos, frompos) local config = { level = 100, -- Level minimo para fazer a quest storage = 14971, -- Não Altere Isso efeito = 28, -- Efeito que fara qndo a quest for feita } if getPlayerLevel(cid) <= config.level then return doPlayerSendCancel(cid, "Você não tem level para fazer esta quest.") end if getPlayerStorageValue(cid, config.storage) == 1 then return doPlayerSendCancel(cid, "Você já fez essa quest.") end pos = getThingPos(cid) a = randomizar[math.random(1,#randomizar)] doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você ganhou "..a.name..".") doSendMagicEffect(pos, config.efeito) setPlayerStorageValue(cid, config.storage, 1) if isItemStackable(a.id) then doPlayerAddItem(cid, a.id,a.qnt) else for i = 1, a.qnt do doPlayerAddItem(cid, a.id, 1) end end return TRUE end -->Agora em data/actions/actions.xml add esta tag: <action actionid="4500" event="script" value="quest_random.lua"/>
Acabou? Não
No seu mapa editor, clique com o botão direito do mouse sobre ele e selecione Properties, como na imagem:
Em Action ID coloque 4500, em Unique ID deixe 0 mesmo, como mostra a imagem:
Explicando a editar
local randomizar = {
[1] = {name="demon armor", id = 2494, qnt = 1},
[2] = {name="demon legs", id = 2495, qnt = 1},
[3] = {name="demon helmet", id = 2493, qnt = 1},
[4] = {name="infernal bolt", id = 6529, qnt = 100},
}
Para add mais itens:
Agora sim terminou
-
thalia recebeu reputação de amora murder em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de frank007 em [NPC] Apostador de VegasNome: NPC Apostador Las Vegas
Versão: Testada na 8.54, mais provavelmente funfa 8.5+
Créditos: 100% by me (:
Como "fanuncia"?
È um npc de apostar, ele possuiu "por inquanto" dois jogos 21 e Jogo dos 6.
~~> Explicando o 21 <~~
O 21 funciona assim: Você ira ganhar 1 número e o número tem quer ser 21, ou chegar o mais próximo possível sem ultrapassar esse valor.
E a mesma coisa será feita com o npc, ele ganhará 1 número.
Você pode ir comprando mais números dizendo [comprar] e se quiser parar é só dizer [parar].
Se seu número for maior que o do npc, você leva o triplo do dinheiro apostado.
~~> Explicando o Jogo do 6 <~~
O Jogo do 6 funciona assim: O npc vai rodar um dado, e se cair no número 6 você ganha o sêxtuplo (6 vezes) do valor apostado.
Caso não caia no 6, você perde apenas o dinheiro da aposta.
Legal né?
Instalando o npc
-> Vá até a pasta data/npc e crie um arquivo xml com o nome lasvegas.xml e cole esse codigo dentro:
<?xml version="1.0" encoding="UTF-8"?> <npc name="Apostador" script="data/npc/scripts/apostador_la.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="138" head="96" body="95" legs="0" feet="95" addons="0"/> <parameters> <parameter key="message_greet" value="Como vai? |PLAYERNAME|, Quer {apostar} comigo?" /> <parameter key="module_keywords" value="1" /> </parameters> </npc> -> Vá até a pasta data/npc/scripts e crie um arquivo lua com o nome apostador_la.lua e cole esse codigo dentro: -- Preços das apostas -- price_21 = 1000 -- 1k ou 1000gold price_jogo6 = 5000 local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid if(msgcontains(msg, 'apostar')) then selfSay('Eu faço 2 jogos: {21},{Jogo do 6} escolha um deles!', cid) talkState[talkUser] = 5 elseif (msgcontains(msg, 'Jogo do 6') and talkState[talkUser] == 5) then selfSay('O Jogo do 6 funciona assim: Eu vou rodar um dado, e se cair no número 6 você ganha o sêxtuplo (6 vezes) do valor apostado.', cid) selfSay('Caso não caia no 6, você perde apenas o dinheiro da aposta.', cid) selfSay('Está pronto para {começar}?.', cid) talkState[talkUser] = 3 elseif(msgcontains(msg, 'começar') and talkState[talkUser] == 3) then selfSay('Você possui o {dinheiro} da aposta ('..price_jogo6..')golds ?', cid) if doPlayerRemoveMoney(cid, price_jogo6) == TRUE then talkState[talkUser] = 2 else selfSay('Desculpe, mais você não tem dinheiro para apostar comigo.',cid) end elseif(msgcontains(msg, 'dinheiro') and talkState[talkUser] == 2) then sorteio6 = math.random(1,6) if sorteio6 == 6 then talkState[talkUser] = 3 selfSay('Parábens, o número sorteado foi 6 e você acaba de ganhar '..(price_jogo6*6) ..'golds, mais o dinheiro que você pagou da aposta.',cid) doPlayerAddMoney(cid,price_jogo6*6) else talkState[talkUser] = 2 selfSay('Que azar, o número sorteado foi '..sorteio6..', mais sorte na proxima.',cid) end elseif(msgcontains(msg, '21') and talkState[talkUser] == 5) then selfSay('O 21 funciona assim: Você ira ganhar 1 número e o número tem quer ser 21, ou chegar o mais próximo possível sem ultrapassar esse valor.', cid) selfSay('E a mesma coisa será feita comigo, ganharei 1 número.', cid) selfSay('Você pode ir comprando mais números dizendo [comprar] e se quiser parar é só dizer [parar].', cid) selfSay('Se você ganhar de mim, você leva o triplo do dinheiro apostado.', cid) selfSay('Está pronto para {começar}?.', cid) talkState[talkUser] = 0 elseif(msgcontains(msg, 'começar') and talkState[talkUser] == 0) then selfSay('Você possui o {dinheiro} da aposta ('..price_21..')golds ?', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'dinheiro') and talkState[talkUser] == 1) then if doPlayerRemoveMoney(cid, price_21) == TRUE then talkState[talkUser] = 0 local mpn = math.random(1,21) setPlayerStorageValue(cid, 55411,mpn) local pn = getPlayerStorageValue(cid, 55411) selfSay('Seu número é '..pn..', quer comprar mais ou parar?',cid) else selfSay('Desculpe, mais você não tem dinheiro para apostar comigo.',cid) end elseif(msgcontains(msg, 'comprar') and talkState[talkUser] == 0) then local cp = math.random(1,10) setPlayerStorageValue(cid, 55411, (getPlayerStorageValue(cid, 55411))+cp) selfSay('Seu número é '..getPlayerStorageValue(cid, 55411)..', quer comprar mais ou parar?',cid) talkState[talkUser] = 0 elseif(msgcontains(msg, 'parar') and talkState[talkUser] == 0) then local npcn = math.random(15,21) setPlayerStorageValue(cid, 2224, npcn) if getPlayerStorageValue(cid, 55411) < getPlayerStorageValue(cid, 2224)then selfSay('Meu número é '..getPlayerStorageValue(cid, 2224)..'.',cid) selfSay('Seu número final é '..getPlayerStorageValue(cid, 55411)..'.',cid) selfSay('Ganhei, mais sorte na proxima vez.',cid) talkState[talkUser] = 1 elseif getPlayerStorageValue(cid, 55411) == getPlayerStorageValue(cid, 2224) then selfSay('Meu número é '..getPlayerStorageValue(cid, 2224)..'.',cid) selfSay('Seu número final é '..getPlayerStorageValue(cid, 55411)..'.',cid) selfSay('Empato, portanto ninguem ganha nada.',cid) talkState[talkUser] = 1 elseif getPlayerStorageValue(cid, 55411) > getPlayerStorageValue(cid, 2224) then selfSay('Meu número é '..getPlayerStorageValue(cid, 2224)..'.',cid) selfSay('Seu número final é '..getPlayerStorageValue(cid, 55411)..'.',cid) local somag = (price_21*3) selfSay('Você ganhou '..somag..'golds, mais os seus '..price_21..'golds de volta. Parábens !!!',cid) doPlayerAddMoney(cid, somag) doPlayerAddMoney(cid, price_21) talkState[talkUser] = 1 else selfSay('Desculpe, mais você não possui dinheiro está aposta',cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
Pronto, npc instalado.
Qualquer dúvida, tamo ae.
Gostou? REP +
-
thalia recebeu reputação de I3reno em Video Aula - Aprenda ser um scripter.Numa próxima vídeo aula vou ensinar mais sobre variáveis e mais umas coisas! Breve vou explicar sobre quests! XD
Edit:
Quem ainda não viu?
-
thalia recebeu reputação de I3reno em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de samlecter em [Ajuda] Quest para escolher um dos chestsAi cara, eu fiz um scriptzinho aqui, to no serviço e então não tem como eu testar, fiz meio correndo, mas é pra funcionar...
function onUse(cid, item) local itens = { [17101] = {id = 2160, qnt = 30}, -- id = (ID do item do do bau 1), qnt = (Quantidade do item do bau 1) [17102] = {id = 2152, qnt = 100}, -- id = (ID do item do do bau 2), qnt = (Quantidade do item do bau 2) [17103] = {id = 2148, qnt = 17}, -- id = (ID do item do do bau 3), qnt = (Quantidade do item do bau 3) } if getPlayerStorageValue(cid, 13470) ~= 1 then if item.actionid == itens[item.actionid] then doPlayerAddItem(cid, itens[item.actionid].id, itens[item.actionid].qnt) doPlayerSendTextMessage(cid,22,"You have found a "..itens[item.actionid].qnt.." "..itens[item.actionid].id..".") setPlayerStorageValue(cid, 13470, 1) else return doPlayerSendTextMessage(cid,22,"It is empty.") end end return TRUE end
Coloquei legenda no script pra você entender o q você muda...
E no mapa editor você vai nos 3 bau e faz o seguinte:
1º Báu:
ActionID:17101
2º Báu:
ActionID:17102
3º Báu:
ActionID:17103
No XML você vai por assim:
<action actionid="17101;17102;17103" event="script" value="NomeDoArquivo.lua"/>
Qualquer coisa tamo aê!
Espero ter ajudado... to meio enferrujado em script, 1 ano e meio sem fazer script auiseiuasuie
-
thalia recebeu reputação de Tava sem ideia em [NPC] Apostador de VegasNome: NPC Apostador Las Vegas
Versão: Testada na 8.54, mais provavelmente funfa 8.5+
Créditos: 100% by me (:
Como "fanuncia"?
È um npc de apostar, ele possuiu "por inquanto" dois jogos 21 e Jogo dos 6.
~~> Explicando o 21 <~~
O 21 funciona assim: Você ira ganhar 1 número e o número tem quer ser 21, ou chegar o mais próximo possível sem ultrapassar esse valor.
E a mesma coisa será feita com o npc, ele ganhará 1 número.
Você pode ir comprando mais números dizendo [comprar] e se quiser parar é só dizer [parar].
Se seu número for maior que o do npc, você leva o triplo do dinheiro apostado.
~~> Explicando o Jogo do 6 <~~
O Jogo do 6 funciona assim: O npc vai rodar um dado, e se cair no número 6 você ganha o sêxtuplo (6 vezes) do valor apostado.
Caso não caia no 6, você perde apenas o dinheiro da aposta.
Legal né?
Instalando o npc
-> Vá até a pasta data/npc e crie um arquivo xml com o nome lasvegas.xml e cole esse codigo dentro:
<?xml version="1.0" encoding="UTF-8"?> <npc name="Apostador" script="data/npc/scripts/apostador_la.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="138" head="96" body="95" legs="0" feet="95" addons="0"/> <parameters> <parameter key="message_greet" value="Como vai? |PLAYERNAME|, Quer {apostar} comigo?" /> <parameter key="module_keywords" value="1" /> </parameters> </npc> -> Vá até a pasta data/npc/scripts e crie um arquivo lua com o nome apostador_la.lua e cole esse codigo dentro: -- Preços das apostas -- price_21 = 1000 -- 1k ou 1000gold price_jogo6 = 5000 local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid if(msgcontains(msg, 'apostar')) then selfSay('Eu faço 2 jogos: {21},{Jogo do 6} escolha um deles!', cid) talkState[talkUser] = 5 elseif (msgcontains(msg, 'Jogo do 6') and talkState[talkUser] == 5) then selfSay('O Jogo do 6 funciona assim: Eu vou rodar um dado, e se cair no número 6 você ganha o sêxtuplo (6 vezes) do valor apostado.', cid) selfSay('Caso não caia no 6, você perde apenas o dinheiro da aposta.', cid) selfSay('Está pronto para {começar}?.', cid) talkState[talkUser] = 3 elseif(msgcontains(msg, 'começar') and talkState[talkUser] == 3) then selfSay('Você possui o {dinheiro} da aposta ('..price_jogo6..')golds ?', cid) if doPlayerRemoveMoney(cid, price_jogo6) == TRUE then talkState[talkUser] = 2 else selfSay('Desculpe, mais você não tem dinheiro para apostar comigo.',cid) end elseif(msgcontains(msg, 'dinheiro') and talkState[talkUser] == 2) then sorteio6 = math.random(1,6) if sorteio6 == 6 then talkState[talkUser] = 3 selfSay('Parábens, o número sorteado foi 6 e você acaba de ganhar '..(price_jogo6*6) ..'golds, mais o dinheiro que você pagou da aposta.',cid) doPlayerAddMoney(cid,price_jogo6*6) else talkState[talkUser] = 2 selfSay('Que azar, o número sorteado foi '..sorteio6..', mais sorte na proxima.',cid) end elseif(msgcontains(msg, '21') and talkState[talkUser] == 5) then selfSay('O 21 funciona assim: Você ira ganhar 1 número e o número tem quer ser 21, ou chegar o mais próximo possível sem ultrapassar esse valor.', cid) selfSay('E a mesma coisa será feita comigo, ganharei 1 número.', cid) selfSay('Você pode ir comprando mais números dizendo [comprar] e se quiser parar é só dizer [parar].', cid) selfSay('Se você ganhar de mim, você leva o triplo do dinheiro apostado.', cid) selfSay('Está pronto para {começar}?.', cid) talkState[talkUser] = 0 elseif(msgcontains(msg, 'começar') and talkState[talkUser] == 0) then selfSay('Você possui o {dinheiro} da aposta ('..price_21..')golds ?', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'dinheiro') and talkState[talkUser] == 1) then if doPlayerRemoveMoney(cid, price_21) == TRUE then talkState[talkUser] = 0 local mpn = math.random(1,21) setPlayerStorageValue(cid, 55411,mpn) local pn = getPlayerStorageValue(cid, 55411) selfSay('Seu número é '..pn..', quer comprar mais ou parar?',cid) else selfSay('Desculpe, mais você não tem dinheiro para apostar comigo.',cid) end elseif(msgcontains(msg, 'comprar') and talkState[talkUser] == 0) then local cp = math.random(1,10) setPlayerStorageValue(cid, 55411, (getPlayerStorageValue(cid, 55411))+cp) selfSay('Seu número é '..getPlayerStorageValue(cid, 55411)..', quer comprar mais ou parar?',cid) talkState[talkUser] = 0 elseif(msgcontains(msg, 'parar') and talkState[talkUser] == 0) then local npcn = math.random(15,21) setPlayerStorageValue(cid, 2224, npcn) if getPlayerStorageValue(cid, 55411) < getPlayerStorageValue(cid, 2224)then selfSay('Meu número é '..getPlayerStorageValue(cid, 2224)..'.',cid) selfSay('Seu número final é '..getPlayerStorageValue(cid, 55411)..'.',cid) selfSay('Ganhei, mais sorte na proxima vez.',cid) talkState[talkUser] = 1 elseif getPlayerStorageValue(cid, 55411) == getPlayerStorageValue(cid, 2224) then selfSay('Meu número é '..getPlayerStorageValue(cid, 2224)..'.',cid) selfSay('Seu número final é '..getPlayerStorageValue(cid, 55411)..'.',cid) selfSay('Empato, portanto ninguem ganha nada.',cid) talkState[talkUser] = 1 elseif getPlayerStorageValue(cid, 55411) > getPlayerStorageValue(cid, 2224) then selfSay('Meu número é '..getPlayerStorageValue(cid, 2224)..'.',cid) selfSay('Seu número final é '..getPlayerStorageValue(cid, 55411)..'.',cid) local somag = (price_21*3) selfSay('Você ganhou '..somag..'golds, mais os seus '..price_21..'golds de volta. Parábens !!!',cid) doPlayerAddMoney(cid, somag) doPlayerAddMoney(cid, price_21) talkState[talkUser] = 1 else selfSay('Desculpe, mais você não possui dinheiro está aposta',cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
Pronto, npc instalado.
Qualquer dúvida, tamo ae.
Gostou? REP +
-
thalia recebeu reputação de Zackeirel Doelinger em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de Nerdbrks em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de islix em Avatar Legends Online Oficial - AtualizaçõesAvatar Legends Online é um projeto de Open Tibia Server, garantindo muita diversção e RPG,
o servidor será baseado no anime Avatar A lenda de Aang.
No servidor não tera Knight, Druid, Sorcerer e Paladin...
E sim, EarthBender, AirBender,FireBender e WaterBender.
Vamos contar mais do Servidor:
Sistemas
Beginner Island: Uma ilha de iniciantes que você vai aprender os comandos básicos para jogar o servidor, ao completar as missões exigidas nessa ilha, você escolherá seu elemento e se mudará para nação do respectivo elemento.
Missão: Você poderá fazer muitas para ganhar itens, dinheiro, experiencia e até mesmo dobras.
Water Bender: Os dobradores de água como no anime, só poderá dobrar água se estiver com um compartimento de água ou estar procimo do mar,rio ou cachoeiras para manipular a água.
Dobras Secretas: Cada dobrador terá dobras secretas, terão que desvendar pergaminhos para conseguir.
Cometa de Sozin: Como no anime, quando um cometa passar pelo servidor os FireBender's ficarão mais fortes por um tempo.
Mestre do Elemento: Cada tipo de elemento terá seu mentor, seu mestre do elemento, com ele você aprenderá como usar as dobras e a melhora-las.
Forja: Você poderá forjar seus próprios equipamentos.
Lua Cheia: Igual o Cometa Sozin, só que é Lua Cheia, é onde os WaterBender's ficarão mais fortes por um tempo.
Avatar: Você poderá se tornar avatar, e dominar os quatro elementos.
Combos: Misturando dobras você criara uma nova ou almentará o poder dela.
Entre demais sistemas.
Cada elemento terá suas qualidades e seus defeitos,
Suas vantages e suas desvantagens,
Seu poder e sua fraquesa!
Uma breve analise dos dobradores:
AIR BENDER
“Direferentemente das outras dobras, a de ar não é feita para o ataque, sendo basicamente composta de movimentos defensivos. É certamente a mais passiva de todas e muitas de suas técnicas consistem em manobras evasivas e formas de evitar o ataque do oponente.”
Pode ser também uma das mais divertidas. Esses dobradores podem pular de prédios em prédios, correr como o vento, soprar oponentes pra longe. Porém, sozinhos, não são capazes de fazer muito estrago. Sempre procuram evitar confrontos.
EARTH BENDER
"A técnica de dobra de terra mantém equilíbrio entre a capacidade ofensiva e defensiva. Estes dobradores podem levantar pedras de diferentes tamanhos, manipular a terra para dar-lhe o formato que desejarem. Podem criar grandes muralhas e qualquer tipo de construção que quiserem somente com a sua dobra."
Esses dobradores são estáveis, firmes, determinados e não possuem muitas fraquesas. Podem se tornar realmente fortes se dominarem a terra, porém essa é uma tarefa muito difícil e requer muita habilidade. Dobradores desabilidosos simplesmente não sabem utilizar suas técnicas corretamente e acabam caindo no fracasso.
WATER BENDER
"Esses dobradores podem manipular a água em todas as suas formas, por isso são muito versáteis. Podem utilizar habilidades de defesa, ataque e suporte. Porém, para fazer esse tipo de dobra é necessário ter uma fonte de água por perto. Por isso em ambientes desérticos há muito pouco que este dobrador possa fazer."
Trata-se de uma dobra especial, pois só pode ser usada com água por perto. Seja de cachoeiras, rios, lagos ou o que for. Dobradores experientes costumam carregar Water Pouchs, uma espécie de compartimento que permite levar água para onde quiser. O ruim é que você tem que abastece-lo periódicamente.
FIRE BENDER
"Esses dobradores são capazes de criar fortes rajadas de fogo, bolas de fogo, paredes de fogo e tudo mais que for possível com esse elemento. Esta é a dobra mais agressiva e destrutiva de todas. E por isso mesmo é necessário que o dobrador tenha muito auto-controle para dominar todo este poder, senão as conseqüências podem ser desastrosas."
Ter tanta força tem um custo: o fogo é deficiente na defesa e suporte, o que dá uma grande desvantagem. Se o dobrador não souber lidar com essa situação, nunca conseguirá usar todo seu potêncial e passará por momentos de grande frustração.
ALGUMAS FOTOS E VIDEOS:
Outfits:
Mapa:
Video Antigo Porem dá para entender um pouco mais do pvp do jogo:
Administradores Gerais:
Gusthavo(Gutao)
Lucas(Thalia)
Mapper:
Gusthavo(Gutao)
Scripter:
Gusthavo(Gutao)
Lucas(Thalia)
Spriter:
Joao(ReyMist)
VAGA<--
Web:
Lucas(Thalia)
VAGA<--
Sugestões, dúvidas e acompanhamento na comunidade oficial:
http://www.orkut.com...y?cmm=114302630
-
thalia recebeu reputação de edumasterrr em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de felipe silvaxxx em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de Shyrriro em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de WillianNS em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de RenanPhellip em [Ajuda] Quest para escolher um dos chestsAi cara, eu fiz um scriptzinho aqui, to no serviço e então não tem como eu testar, fiz meio correndo, mas é pra funcionar...
function onUse(cid, item) local itens = { [17101] = {id = 2160, qnt = 30}, -- id = (ID do item do do bau 1), qnt = (Quantidade do item do bau 1) [17102] = {id = 2152, qnt = 100}, -- id = (ID do item do do bau 2), qnt = (Quantidade do item do bau 2) [17103] = {id = 2148, qnt = 17}, -- id = (ID do item do do bau 3), qnt = (Quantidade do item do bau 3) } if getPlayerStorageValue(cid, 13470) ~= 1 then if item.actionid == itens[item.actionid] then doPlayerAddItem(cid, itens[item.actionid].id, itens[item.actionid].qnt) doPlayerSendTextMessage(cid,22,"You have found a "..itens[item.actionid].qnt.." "..itens[item.actionid].id..".") setPlayerStorageValue(cid, 13470, 1) else return doPlayerSendTextMessage(cid,22,"It is empty.") end end return TRUE end
Coloquei legenda no script pra você entender o q você muda...
E no mapa editor você vai nos 3 bau e faz o seguinte:
1º Báu:
ActionID:17101
2º Báu:
ActionID:17102
3º Báu:
ActionID:17103
No XML você vai por assim:
<action actionid="17101;17102;17103" event="script" value="NomeDoArquivo.lua"/>
Qualquer coisa tamo aê!
Espero ter ajudado... to meio enferrujado em script, 1 ano e meio sem fazer script auiseiuasuie
-
thalia recebeu reputação de TioItachi em [NPC] Mate o monstro e complete sua tarefa.Olá (: , estou aqui de novo com um npc bom para servidores RPG'
~~> Como funciona? <~~
Você fala com o npc, o npc sumona um monstro e após matar este monstro,
ele te dá uma reconpensa.
~~> Como Instalar? <~~
-> Vá em data/creaturescripts/creaturescripts.xml e add essa tag:
<event type="death" name="NPC" event="script" value="npcquest.lua"/> ->Agora vá em creaturescripts/scripts e crie um novo arquivo com o nome npcquest.lua e bote isto dentro: function onDeath(cid, corpse, killer) local monstName = "Monk" -- nome do monstro local Storage = 9755 -- nao mude if isMonster(cid) then if string.lower(getCreatureName(cid)) == string.lower(monstName) then setPlayerStorageValue(killer[1], Storage, 1) doCreatureSay(killer[1],'Você completo sua tarefa.',TALKTYPE_ORANGE_1) end end return TRUE end ->Agora você vai no xml do monstro que você escolheu e lá no final do script antes do </monster>, você add: <script> <event name="NPC"/> </script> ->Agora em data/npc, crie um novo arquivo com o nome Jhow.xml e bote isto dentro: <?xml version="1.0" encoding="UTF-8"?> <npc name="Jhow" script="data/npc/scripts/jhow.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="138" head="96" body="95" legs="0" feet="95" addons="0"/> <parameters> <parameter key="message_greet" value="Ola |PLAYERNAME|, voce quer testar suas habilidades?" /> <parameter key="module_keywords" value="1" /> </parameters> </npc> ->Agora vá em npc/script e crie um novo arquivo com o nome de jhow.lua e bote isto dentro: local nomeMonst = "Monk" -- Nome do mosntro que ele vai sumonar local itemid = 2150 local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid if getPlayerStorageValue(cid, 9755) == -1 then if(msgcontains(msg, 'yes')) then selfSay('Mate este monstro para completar sua tarefa.', cid) doCreateMonster(nomeMonst,getThingPos(cid)) talkState[talkUser] = 1 end return true end if getPlayerStorageValue(cid, 9755) == 1 then selfSay('Você matou o monstro e ganhou um item.', cid) doPlayerAddItem(cid, itemid,1) setPlayerStorageValue(cid, 9755,2) talkState[talkUser] = 0 return true end if getPlayerStorageValue(cid, 9755) == 2 then selfSay('Você já fez esta tarefa.', cid) talkState[talkUser] = 0 return true end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) ->Agora volte lá em creaturescripts/scripts/ e procure por login.lua e antes do ultimo return true add isto: registerCreatureEvent(cid, "NPC")
Pronto amigo! NPC instalado :},
COMENTEM Por favor
-
thalia recebeu reputação de Victorwquerra em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de victor0707 em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de Anjo Celestial em [NPC] Apostador de VegasNome: NPC Apostador Las Vegas
Versão: Testada na 8.54, mais provavelmente funfa 8.5+
Créditos: 100% by me (:
Como "fanuncia"?
È um npc de apostar, ele possuiu "por inquanto" dois jogos 21 e Jogo dos 6.
~~> Explicando o 21 <~~
O 21 funciona assim: Você ira ganhar 1 número e o número tem quer ser 21, ou chegar o mais próximo possível sem ultrapassar esse valor.
E a mesma coisa será feita com o npc, ele ganhará 1 número.
Você pode ir comprando mais números dizendo [comprar] e se quiser parar é só dizer [parar].
Se seu número for maior que o do npc, você leva o triplo do dinheiro apostado.
~~> Explicando o Jogo do 6 <~~
O Jogo do 6 funciona assim: O npc vai rodar um dado, e se cair no número 6 você ganha o sêxtuplo (6 vezes) do valor apostado.
Caso não caia no 6, você perde apenas o dinheiro da aposta.
Legal né?
Instalando o npc
-> Vá até a pasta data/npc e crie um arquivo xml com o nome lasvegas.xml e cole esse codigo dentro:
<?xml version="1.0" encoding="UTF-8"?> <npc name="Apostador" script="data/npc/scripts/apostador_la.lua" walkinterval="2000" floorchange="0"> <health now="100" max="100"/> <look type="138" head="96" body="95" legs="0" feet="95" addons="0"/> <parameters> <parameter key="message_greet" value="Como vai? |PLAYERNAME|, Quer {apostar} comigo?" /> <parameter key="module_keywords" value="1" /> </parameters> </npc> -> Vá até a pasta data/npc/scripts e crie um arquivo lua com o nome apostador_la.lua e cole esse codigo dentro: -- Preços das apostas -- price_21 = 1000 -- 1k ou 1000gold price_jogo6 = 5000 local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid if(msgcontains(msg, 'apostar')) then selfSay('Eu faço 2 jogos: {21},{Jogo do 6} escolha um deles!', cid) talkState[talkUser] = 5 elseif (msgcontains(msg, 'Jogo do 6') and talkState[talkUser] == 5) then selfSay('O Jogo do 6 funciona assim: Eu vou rodar um dado, e se cair no número 6 você ganha o sêxtuplo (6 vezes) do valor apostado.', cid) selfSay('Caso não caia no 6, você perde apenas o dinheiro da aposta.', cid) selfSay('Está pronto para {começar}?.', cid) talkState[talkUser] = 3 elseif(msgcontains(msg, 'começar') and talkState[talkUser] == 3) then selfSay('Você possui o {dinheiro} da aposta ('..price_jogo6..')golds ?', cid) if doPlayerRemoveMoney(cid, price_jogo6) == TRUE then talkState[talkUser] = 2 else selfSay('Desculpe, mais você não tem dinheiro para apostar comigo.',cid) end elseif(msgcontains(msg, 'dinheiro') and talkState[talkUser] == 2) then sorteio6 = math.random(1,6) if sorteio6 == 6 then talkState[talkUser] = 3 selfSay('Parábens, o número sorteado foi 6 e você acaba de ganhar '..(price_jogo6*6) ..'golds, mais o dinheiro que você pagou da aposta.',cid) doPlayerAddMoney(cid,price_jogo6*6) else talkState[talkUser] = 2 selfSay('Que azar, o número sorteado foi '..sorteio6..', mais sorte na proxima.',cid) end elseif(msgcontains(msg, '21') and talkState[talkUser] == 5) then selfSay('O 21 funciona assim: Você ira ganhar 1 número e o número tem quer ser 21, ou chegar o mais próximo possível sem ultrapassar esse valor.', cid) selfSay('E a mesma coisa será feita comigo, ganharei 1 número.', cid) selfSay('Você pode ir comprando mais números dizendo [comprar] e se quiser parar é só dizer [parar].', cid) selfSay('Se você ganhar de mim, você leva o triplo do dinheiro apostado.', cid) selfSay('Está pronto para {começar}?.', cid) talkState[talkUser] = 0 elseif(msgcontains(msg, 'começar') and talkState[talkUser] == 0) then selfSay('Você possui o {dinheiro} da aposta ('..price_21..')golds ?', cid) talkState[talkUser] = 1 elseif(msgcontains(msg, 'dinheiro') and talkState[talkUser] == 1) then if doPlayerRemoveMoney(cid, price_21) == TRUE then talkState[talkUser] = 0 local mpn = math.random(1,21) setPlayerStorageValue(cid, 55411,mpn) local pn = getPlayerStorageValue(cid, 55411) selfSay('Seu número é '..pn..', quer comprar mais ou parar?',cid) else selfSay('Desculpe, mais você não tem dinheiro para apostar comigo.',cid) end elseif(msgcontains(msg, 'comprar') and talkState[talkUser] == 0) then local cp = math.random(1,10) setPlayerStorageValue(cid, 55411, (getPlayerStorageValue(cid, 55411))+cp) selfSay('Seu número é '..getPlayerStorageValue(cid, 55411)..', quer comprar mais ou parar?',cid) talkState[talkUser] = 0 elseif(msgcontains(msg, 'parar') and talkState[talkUser] == 0) then local npcn = math.random(15,21) setPlayerStorageValue(cid, 2224, npcn) if getPlayerStorageValue(cid, 55411) < getPlayerStorageValue(cid, 2224)then selfSay('Meu número é '..getPlayerStorageValue(cid, 2224)..'.',cid) selfSay('Seu número final é '..getPlayerStorageValue(cid, 55411)..'.',cid) selfSay('Ganhei, mais sorte na proxima vez.',cid) talkState[talkUser] = 1 elseif getPlayerStorageValue(cid, 55411) == getPlayerStorageValue(cid, 2224) then selfSay('Meu número é '..getPlayerStorageValue(cid, 2224)..'.',cid) selfSay('Seu número final é '..getPlayerStorageValue(cid, 55411)..'.',cid) selfSay('Empato, portanto ninguem ganha nada.',cid) talkState[talkUser] = 1 elseif getPlayerStorageValue(cid, 55411) > getPlayerStorageValue(cid, 2224) then selfSay('Meu número é '..getPlayerStorageValue(cid, 2224)..'.',cid) selfSay('Seu número final é '..getPlayerStorageValue(cid, 55411)..'.',cid) local somag = (price_21*3) selfSay('Você ganhou '..somag..'golds, mais os seus '..price_21..'golds de volta. Parábens !!!',cid) doPlayerAddMoney(cid, somag) doPlayerAddMoney(cid, price_21) talkState[talkUser] = 1 else selfSay('Desculpe, mais você não possui dinheiro está aposta',cid) end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
Pronto, npc instalado.
Qualquer dúvida, tamo ae.
Gostou? REP +
-
thalia recebeu reputação de rafanasser em Video Aula - Aprenda ser um scripter.Bom galera, tudo certo? XD
Então galera, como todo mundo me pedia ajuda com scripts, decidir criar um canal no youtube focado bastante
em como se tornar um script, no canal vai ter videos ensinando "scriptar" e como interpretar um script... enfim!
Se inscrevam no canal e ajude a divulga-lo galera!
muito obrigado a sua atenção, aqui vai o link do canal junto com
o primeiro vídeo!
Canal:
http://www.youtube.com/user/NWEnsina
#1 Vídeo - OT Scripting #1 - function onUse, if/else.
Explicando Script #1 - Talkaction trocar 1kk por X [TK]
Site/Blog:
http://www.nwensina.blogspot.com.br
OT Scripting #2 - Function onUse, itemEx e Positions + funções [NW]
youtube.com/watch?v=SzR43PZO10I
PS: O TK não permiti mais que 2 links de mídia
mas é só copiar e colar no navegador (:
-
thalia recebeu reputação de Shyrriro em [LUA] Lista de funções[LUA] Lista De Funções
Esta lista contêm todas ou quase todas as funções LUA do The Forgotten Server
1. Funções #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) getCreatureSkullType(cid) getCreatureCondition(cid, condition[, subId]) getCreatureNoMove(cid) getMonsterInfo(name) getMonsterHealingSpells(name) getMonsterAttackSpells(name) getMonsterLootList(name) getMonsterTargetList(cid) getMonsterFriendList(cid) getPlayerByNameWildcard(name~) getPlayerLossSkill(cid) getPlayerLossPercent(cid, lossType) getPlayerGUIDByName(name[, multiworld]) getPlayerNameByGUID(guid[, multiworld]) getPlayerFood(cid) getPlayerLevel(cid) getPlayerExperience(cid) getPlayerMagLevel(cid[, ignoreBuffs]) 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) getPlayerAccountId(cid) getPlayerAccount(cid) getPlayerIp(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) getPlayerExtraExpRate(cid) getPlayerPartner(cid) getPlayerParty(cid) getPlayerPremiumDays(cid) getPlayerBalance(cid) getPlayerRedSkullTicks(cid) getPlayerRates(cid) getInstantSpellInfo(cid, name) getPlayersByAccountId(accountNumber) getPlayersByIp(ip[, mask = 0xFFFFFFFF]) getPlayersOnline() getPartyMembers(lid) getAccountIdByName(name) getAccountByName(name) getAccountIdByAccount(accName) getAccountByAccountId(accId) getIpByName(name) getItemRWInfo(uid) getItemDescriptionsById(itemid) getItemWeightById(itemid, count[, precise]) getItemDescriptions(uid) getItemWeight(uid[, precise]) getItemAttack(uid) getItemExtraAttack(uid) getItemDefense(uid) getItemExtraDefense(uid) getItemArmor(uid) getItemAttackSpeed(uid) getItemHitChance(uid) getItemShootRange(uid) getItemIdByName(name[, reportError]) getItemLevelDoor(itemid) getItemWeaponType(uid) getFluidSourceType(type) getContainerSize(uid) getContainerCap(uid) getContainerCapById(itemid) getContainerItem(uid, slot) getDepotId(uid) getTileItemById(pos, itemId[, subType]) getTileItemByType(pos, type) getTileThingByPos(pos) getTileInfo(pos) getTopCreature(pos) getClosestFreeTile(cid, targetpos[, extended[, ignoreHouse]]) getThingFromPos(pos) getThing(uid) getThingPos(uid) getHouseOwner(houseid) getHouseName(houseid) getHouseEntry(houseid) getHouseRent(houseid) getHousePrice(houseid) getHouseTown(houseid) getHouseAccessList(houseid, listid) getHouseByPlayerGUID(playerGUID) getHouseFromPos(pos) getHouseTilesSize(houseid) getTownId(townName) getTownName(townId) getTownTemplePosition(townId) getTownHouses(townId) getWorldType() getWorldTime() getWorldLight() getWorldCreatures(type) //0 players, 1 monsters, 2 npcs, 3 all getWorldUpTime() getHighscoreString(skillId) getVocationInfo(id) getGuildId(guildName) getGuildMotd(guildId) getSpectators(centerPos, rangex, rangey, multifloor) getSearchString(fromPosition, toPosition[, fromIsCreature[, toIsCreature]]) getWaypointPosition(name) getGameState() getNotationsCount(accId) getBanData(value) getBanList(type[, value]) getBanReason(id) getBanAction(id[, ipBanishment]) getGlobalStorageValue(valueid) getExperienceStage(level) getConfigFile() getConfigValue(key) getLogsDir() getDataDir() 2. Funções #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) setItemArticle(uid) setItemAttack(uid, attack) setItemExtraAttack(uid, extraattack) setItemDefense(uid, defense) setItemArmor(uid, armor) setItemExtraDefense(uid, extradefense) setItemAttackSpeed(uid, attackspeed) setItemHitChance(uid, hitChance) setItemShootRange(uid, shootRange) 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) 3. Funções #do doCreatureAddHealth(cid, health[, force]) doCreatureAddMana(cid, mana) doCreatureSetDropLoot(cid, doDrop) doCreatureSetSkullType(cid, skull) doCreatureSetLookDir(cid, dir) doCreatureChangeOutfit(cid, outfit) doCreatureSay(cid, text, type[, pos]) doCreatureSetNoMove(cid, cannotMove) doSetCreatureLight(cid, lightLevel, lightColor, time) doSetCreatureOutfit(cid, outfit, time) doRemoveCreature(cid) doMoveCreature(cid, direction) doConvinceCreature(cid, target) doChallengeCreature(cid, target) doChangeSpeed(cid, delta) doSummonMonster(name, pos) doCreateMonster(name, pos) doMonsterChangeTarget(cid) doMonsterSetTarget(cid, target) doCreateNpc(name, pos) 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) doPlayerSetRedSkullTicks(cid, amount) 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) doPlayerSendChannelMessage(cid, author, message, SpeakClasses, channel) doPlayerSendToChannel(cid, targetId, SpeakClasses, message, channel[, time]) 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) doPlayerResetIdleTime(cid) doPlayerLearnInstantSpell(cid, name) doPlayerUnlearnInstantSpell(cid, name) doPlayerFeed(cid, food) doPlayerSendCancel(cid, text) doPlayerSendDefaultCancel(cid, ReturnValue) doPlayerSetExperienceRate(cid, value) doPlayerSetMagicRate(cid, value) doPlayerSetSkillRate(cid, skill, value) doPlayerJoinParty(cid, lid) doPlayerSendOutfitWindow(cid) 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[, writer[, date]]) doSetItemSpecialDescription(uid, desc) doSetItemOutfit(cid, item, time) doTileAddItemEx(pos, uid) doTileQueryAdd(uid, pos[, flags]) doAddCondition(cid, condition) doRemoveCondition(cid, type[, subId]) doRemoveConditions(cid[, onlyPersistent]) 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[, creature]) doSendDistanceShoot(frompos, topos, type[, creature]) doSendAnimatedText(pos, text, color[, creature]) doShowTextDialog(cid, itemid, text) doRelocate(pos, posTo) doBroadcastMessage(message, type) doWaypointAddTemporial(name, pos) doSetGameState(id) doAddIpBanishment(ip[, length[, comment[, admin]]]) doAddNamelock(name[, reason[, action[, comment[, admin]]]]) doAddBanishment(accId[, length[, reason[, action[, comment[, admin]]]]]) doAddDeletion(accId[, reason[, action[, comment[, admin]]]]]) doAddNotation(accId[, reason[, action[, comment[, admin]]]]]) doRemoveIpBanishment(ip[, mask]) doRemoveNamelock(name) doRemoveBanisment(accId) doRemoveDeletion(accId) doRemoveNotations(accId) doSaveServer() doReloadInfo() doCleanHouse(houseId) doCleanMap() doRefreshMap() 4. Funções #is isCreature(cid) isMonster(uid) isNpc(uid) isPlayer(cid) isPlayerPzLocked(cid) isItemStackable(itemid) isItemRune(itemid) isItemMovable(itemid) isItemDoor(itemid) isItemContainer(itemid) isItemFluidContainer(itemid) isContainer(uid) isCorpse(uid) isMovable(uid) isSightClear(fromPos, toPos, floorCheck) isIpBanished(ip[, mask]) isPlayerNamelocked(name) isAccountBanished(accId) isAccountDeleted(accId) isInArray({array}, value) 5. Outras funções registerCreatureEvent(uid, eventName) createCombatArea({area}[, {exArea}]) createConditionObject(type[, ticks[, buff[, subId]]]) 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) canPlayerWearOutfit(cid, looktype, addons) executeRaid(name) addEvent(callback, delay, ...) stopEvent(eventid) hasProperty(uid) 6. Funções #db table db.executeQuery(query) db.storeQuery(query) db.escapeString(str) db.escapeBlob(s, length) db.stringComparisonOperator() 7. Funções #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) 8. Funções #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 9. Funções iguais table.getPos = table.find doSetCreatureDropLoot = doCreatureSetDropLoot doPlayerSay = doCreatureSay doPlayerAddMana = doCreatureAddMana playerLearnInstantSpell = doPlayerLearnInstantSpell doPlayerRemOutfit = doPlayerRemoveOutfit pay = doPlayerRemoveMoney broadcastMessage = doBroadcastMessage getPlayerName = getCreatureName getPlayerPosition = getCreaturePosition getCreaturePos = getCreaturePosition creatureGetPosition = getCreaturePosition getPlayerMana = getCreatureMana getPlayerMaxMana = getCreatureMaxMana hasCondition = getCreatureCondition isMoveable = isMovable isItemMoveable = isItemMovable saveData = saveServer savePlayers = saveServer getPlayerSkill = getPlayerSkillLevel getPlayerSkullType = getCreatureSkullType getAccountNumberByName = getAccountIdByName getIPByName = getIpByName getPlayersByIP = getPlayersByIp getThingfromPos = getThingFromPos getPlayersByAccountNumber = getPlayersByAccountId getIPByPlayerName = getIpByName getPlayersByIPNumber = getPlayersByIp getAccountNumberByPlayerName = getAccountIdByName convertIntToIP = doConvertIntegerToIp convertIPToInt = doConvertIpToInteger queryTileAddThing = doTileQueryAdd getTileHouseInfo = getHouseFromPos executeRaid = doExecuteRaid saveServer = doSaveServer cleanHouse = doCleanHouse cleanMap = doCleanMap shutdown = doShutdown mayNotMove = doCreatureSetNoMove doPlayerSetNoMove = doCreatureSetNoMove getPlayerNoMove = getCreatureNoMove getConfigInfo = getConfigValue 10. Funções #lua-made doPlayerGiveItem(cid, itemid, amount, subType) doPlayerTakeItem(cid, itemid, amount) doPlayerBuyItem(cid, itemid, count, cost, charges) doPlayerBuyItemContainer(cid, containerid, itemid, count, cost, charges) doPlayerSellItem(cid, itemid, count, cost) isInRange(pos, fromPos, toPos) isPremium(cid) getMonthDayEnding(day) getMonthString(m) getArticle(str) isNumber(str) getDistanceBetween(firstPosition, secondPosition) doPlayerAddAddons(cid, addon) isSorcerer(cid) isDruid(cid) isPaladin(cid) isKnight(cid) isRookie(cid) getDirectionTo(pos1, pos2) getPlayerLookPos(cid) getPosByDir(fromPosition, direction, size) getPlayerMoney(cid) doPlayerWithdrawAllMoney(cid) doPlayerDepositAllMoney(cid) doPlayerTransferAllMoneyTo(cid, target) playerExists(name) getTibiaTime() doWriteLogFile(file, text) isInArea(pos, fromPos, toPos) getExperienceForLevel(lv) doMutePlayer(cid, time) getPlayerVocationName(cid) getPromotedVocation(vid) doPlayerRemovePremiumDays(cid, days) getPlayerMasterPos(cid) getItemNameById(itemid) getItemPluralNameById(itemid) getItemArticleById(itemid) getItemName(uid) getItemPluralName(uid) getItemArticle(uid) getItemText(uid) getItemWriter(uid) getItemDate(uid) getTilePzInfo(pos) getTileZoneInfo(pos) debugPrint(text) doShutdown() doSummonCreature(name, pos) getOnlinePlayers() getPlayerByName(name) isPlayerGhost(cid) getPlayerFrags(cid) getPartyLeader(cid) isInParty(cid) isPrivateChannel(channelId) doConvertIntegerToIp(int, mask) doConvertIpToInteger(int, mask) getBooleanFromString(str) doCopyItem(item, attributes) exhaustion.check(cid, storage) exhaustion.get(cid, storage) exhaustion.set(cid, storage, time) exhaustion.make(cid, storage, time) table.find(table, value) table.isStrIn(txt, str) table.countElements(table, item) table.getCombinations(table, num) string.split(str) string.trim(str) string.explode(str, sep)
OBS: 90% Créditos ao Sukx e 10% a mim por trazer ao TibiaKing e formatar o texto.