-
Total de itens
84 -
Registro em
-
Última visita
Tudo que fawkz12 postou
-
tfs 0.3.6 [Encerrado] Cliente IP Fixo
tópico respondeu ao fawkz12 de fawkz12 em Tópicos Sem Resposta
Galera não to em casa, mas chegando lá, vejo se funcionou, se funcionar REP+, e passo meu enter game pra vocês tbm é o seguinte, esse SCRIPT ai de cima não funcionou, não mudou... ai achei um arquivo na pasta do cliente WINRAR e la tem enter game, funcionou tudo, coloquei servidor 127.0.0.1 para testar. mas quando eu vou tentar logar, não carrega, da erro ! \/ Script do que peguei no WINRAR EnterGame = { } -- private variables local loadBox local enterGame local motdWindow local motdButton local enterGameButton local protocolBox local protocolLogin local motdEnabled = true -- private functions local function onError(protocol, message, errorCode) if loadBox then loadBox:destroy() loadBox = nil end if not errorCode then EnterGame.clearAccountFields() end local errorBox = displayErrorBox(tr('Login Error'), message) connect(errorBox, { onOk = EnterGame.show }) end local function onMotd(protocol, motd) G.motdNumber = tonumber(motd:sub(0, motd:find("\n"))) G.motdMessage = motd:sub(motd:find("\n") + 1, #motd) if motdEnabled then motdButton:show() end end local function onCharacterList(protocol, characters, account, otui) -- Try add server to the server list ServerList.add(G.host, G.port, g_game.getProtocolVersion()) if enterGame:getChildById('rememberPasswordBox'):isChecked() then local account = g_crypt.encrypt(G.account) local password = g_crypt.encrypt(G.password) g_settings.set('account', account) g_settings.set('password', password) ServerList.setServerAccount(G.host, account) ServerList.setServerPassword(G.host, password) g_settings.set('autologin', enterGame:getChildById('autoLoginBox'):isChecked()) else -- reset server list account/password ServerList.setServerAccount(G.host, '') ServerList.setServerPassword(G.host, '') EnterGame.clearAccountFields() end loadBox:destroy() loadBox = nil CharacterList.create(characters, account, otui) CharacterList.show() if motdEnabled then local lastMotdNumber = g_settings.getNumber("motd") if G.motdNumber and G.motdNumber ~= lastMotdNumber then g_settings.set("motd", motdNumber) motdWindow = displayInfoBox(tr('Message of the day'), G.motdMessage) connect(motdWindow, { onOk = function() CharacterList.show() motdWindow = nil end }) CharacterList.hide() end end end local function onChangeProtocol(combobox, option) local clients = g_game.getSupportedClients(option) protocolBox:setTooltip("Supports Client" .. (#clients > 1 and "s" or "") .. ": " .. table.tostring(clients)) end local function onUpdateNeeded(protocol, signature) loadBox:destroy() loadBox = nil if EnterGame.updateFunc then local continueFunc = EnterGame.show local cancelFunc = EnterGame.show EnterGame.updateFunc(signature, continueFunc, cancelFunc) else local errorBox = displayErrorBox(tr('Update needed'), tr('Your client needs update, try redownloading it.')) connect(errorBox, { onOk = EnterGame.show }) end end -- public functions function EnterGame.init() enterGame = g_ui.displayUI('entergame') enterGameButton = modules.client_topmenu.addCustomLeftButton('enterGameButton', tr('Login') .. ' (Ctrl + G)', '/images/ui/pxg/topMenu_icons/entrar_icon', EnterGame.openWindow, false) motdButton = modules.client_topmenu.addCustomLeftButton('motdButton', tr('Message of the day'), '/images/ui/pxg/topMenu_icons/news_icon', EnterGame.displayMotd, false) motdButton:hide() g_keyboard.bindKeyDown('Ctrl+G', EnterGame.openWindow) if motdEnabled and G.motdNumber then motdButton:show() end local account = g_settings.get('account') local password = g_settings.get('password') local host = g_settings.get('host') local port = g_settings.get('port') local autologin = g_settings.getBoolean('autologin') local protocolVersion = g_settings.getInteger('protocol-version') if port == nil or port == 0 then port = 7171 end EnterGame.setAccountName(account) EnterGame.setPassword(password) enterGame:getChildById('serverHostTextEdit'):setText(host) enterGame:getChildById('serverPortTextEdit'):setText(port) enterGame:getChildById('autoLoginBox'):setChecked(autologin) protocolBox = enterGame:getChildById('protocolComboBox') protocolBox.onOptionChange = onChangeProtocol if protocolVersion then protocolBox:setCurrentOption(protocolVersion) end enterGame:hide() if g_app.isRunning() and not g_game.isOnline() then enterGame:show() end --EnterGame.setUniqueServer(hostName, port, protocolVersion, windowWidth, windowHeight) EnterGame.setUniqueServer('127.0.0.1', 7171, 854, 270, 210) end function EnterGame.firstShow() EnterGame.show() local account = g_crypt.decrypt(g_settings.get('account')) local password = g_crypt.decrypt(g_settings.get('password')) local host = g_settings.get('host') local autologin = g_settings.getBoolean('autologin') if #host > 0 and #password > 0 and #account > 0 and autologin then addEvent(function() if not g_settings.getBoolean('autologin') then return end EnterGame.doLogin() end) end end function EnterGame.terminate() g_keyboard.unbindKeyDown('Ctrl+G') enterGame:destroy() enterGame = nil enterGameButton:destroy() enterGameButton = nil protocolBox = nil if motdWindow then motdWindow:destroy() motdWindow = nil end if motdButton then motdButton:destroy() motdButton = nil end if loadBox then loadBox:destroy() loadBox = nil end if protocolLogin then protocolLogin:cancelLogin() protocolLogin = nil end EnterGame = nil end function EnterGame.show() if loadBox then return end enterGame:show() enterGame:raise() enterGame:focus() end function EnterGame.hide() enterGame:hide() end function EnterGame.openWindow() if g_game.isOnline() then CharacterList.show() elseif not g_game.isLogging() and not CharacterList.isVisible() then EnterGame.show() end end function EnterGame.setAccountName(account) local account = g_crypt.decrypt(account) enterGame:getChildById('accountNameTextEdit'):setText(account) enterGame:getChildById('accountNameTextEdit'):setCursorPos(-1) enterGame:getChildById('rememberPasswordBox'):setChecked(#account > 0) end function EnterGame.setPassword(password) local password = g_crypt.decrypt(password) enterGame:getChildById('accountPasswordTextEdit'):setText(password) end function EnterGame.clearAccountFields() enterGame:getChildById('accountNameTextEdit'):clearText() enterGame:getChildById('accountPasswordTextEdit'):clearText() enterGame:getChildById('accountNameTextEdit'):focus() g_settings.remove('account') g_settings.remove('password') end function EnterGame.doLogin() G.account = enterGame:getChildById('accountNameTextEdit'):getText() G.password = enterGame:getChildById('accountPasswordTextEdit'):getText() G.host = enterGame:getChildById('serverHostTextEdit'):getText() G.port = tonumber(enterGame:getChildById('serverPortTextEdit'):getText()) local protocolVersion = tonumber(protocolBox:getText()) local clientVersions = g_game.getSupportedClients(protocolVersion) EnterGame.hide() if g_game.isOnline() then local errorBox = displayErrorBox(tr('Login Error'), tr('Cannot login while already in game.')) connect(errorBox, { onOk = EnterGame.show }) return end g_settings.set('host', G.host) g_settings.set('port', G.port) protocolLogin = ProtocolLogin.create() protocolLogin.onLoginError = onError protocolLogin.onMotd = onMotd protocolLogin.onCharacterList = onCharacterList protocolLogin.onUpdateNeeded = onUpdateNeeded loadBox = displayCancelBox(tr('Please wait'), tr('Connecting to login server...')) connect(loadBox, { onCancel = function(msgbox) loadBox = nil protocolLogin:cancelLogin() EnterGame.show() end }) g_game.chooseRsa(G.host) g_game.setProtocolVersion(protocolVersion) if #clientVersions > 0 then g_game.setClientVersion(clientVersions[#clientVersions]) end if modules.game_things.isLoaded() then protocolLogin:login(G.host, G.port, G.account, G.password) else loadBox:destroy() loadBox = nil EnterGame.show() end end function EnterGame.displayMotd() if not motdWindow then motdWindow = displayInfoBox(tr('Message of the day'), G.motdMessage) motdWindow.onOk = function() motdWindow = nil end end end function EnterGame.setDefaultServer(host, port, protocol) local hostTextEdit = enterGame:getChildById('serverHostTextEdit') local portTextEdit = enterGame:getChildById('serverPortTextEdit') local protocolLabel = enterGame:getChildById('protocolLabel') local accountTextEdit = enterGame:getChildById('accountNameTextEdit') local passwordTextEdit = enterGame:getChildById('accountPasswordTextEdit') if hostTextEdit:getText() ~= host then hostTextEdit:setText(host) portTextEdit:setText(port) protocolBox:setCurrentOption(protocol) accountTextEdit:setText('') passwordTextEdit:setText('') end end function EnterGame.setUniqueServer(host, port, protocol, windowWidth, windowHeight) local hostTextEdit = enterGame:getChildById('serverHostTextEdit') hostTextEdit:setText(host) hostTextEdit:setVisible(false) hostTextEdit:setHeight(0) local portTextEdit = enterGame:getChildById('serverPortTextEdit') portTextEdit:setText(port) portTextEdit:setVisible(false) portTextEdit:setHeight(0) protocolBox:setCurrentOption(protocol) protocolBox:setVisible(false) protocolBox:setHeight(0) local serverLabel = enterGame:getChildById('serverLabel') serverLabel:setVisible(false) serverLabel:setHeight(0) local portLabel = enterGame:getChildById('portLabel') portLabel:setVisible(false) portLabel:setHeight(0) local protocolLabel = enterGame:getChildById('protocolLabel') protocolLabel:setVisible(false) protocolLabel:setHeight(0) local serverListButton = enterGame:getChildById('serverListButton') serverListButton:setVisible(false) serverListButton:setHeight(0) serverListButton:setWidth(0) local rememberPasswordBox = enterGame:getChildById('rememberPasswordBox') rememberPasswordBox:setMarginTop(-5) if not windowWidth then windowWidth = 236 end enterGame:setWidth(windowWidth) if not windowHeight then windowHeight = 200 end enterGame:setHeight(windowHeight) end function EnterGame.setServerInfo(message) local label = enterGame:getChildById('serverInfoLabel') label:setText(message) end function EnterGame.disableMotd() motdEnabled = false motdButton:hide() end -
Pedido: Colocar horas para usar o ITEM novamente e colocar quantos minutos o item pode ficar ON ! Motivo: PET System ! coloquei um MEWTWO e um MEW, mas eles ficam quando quiser e podem sumonar quando quiser ! Script: function onUse(cid, item, frompos, item2, topos) local dolls = { [2344] = {pet = "Mewtwo"}, [2139] = {pet = "Mew"}, } local go = dolls[item.itemid] local summon = getCreatureSummons(cid) --------------------------------------------------- if #summon >= 1 then for _, pid in ipairs(summon) do doRemoveCreature(pid) doCreatureSay(cid, "Can go rest ["..go.pet.."]", TALKTYPE_ORANGE_1) end return true end doConvinceCreature(cid, doSummonCreature(go.pet, getCreaturePosition(cid))) doCreatureSay(cid, "Let battle ["..go.pet.."]", TALKTYPE_ORANGE_1) return true end
-
Poh Vlw msm me inspira ouvir isso ! vou ver sim :3
-
Queria meu CLIENTE com IP Fixo;;;
-
Obrigado, vocês dois me ajudaram... hoje não posso dar mais REP, mas com Certeza darei REP a vocÊs <3
-
Poh vlw ! Não posso dar REP hoje, mas amanha eu dou <3
-
Adicionei esse PET system ao MEU SERVIDOR ! http://www.xtibia.com/forum/topic/213152-simple-pet-system/ Mas quando eu SUMONO o Monster vem com 500 de Vida e ele não ataca os que me atacam
-
Mas como posso colocar para o meu PET não levar DANO e soltar Magias AUTOMATICAS?
-
Creditos ao -- Linnux
-
Olá, preciso de um SCRIPT de !cp, que teleporta os VIPS para o CP, apenas VIPS! e não pode estar em battle Obrigado a quem ajudar Rep+
-
Como posso aumentar a VELOCIDADE do FLY do meu POKETIBIA?
-
Vou testar! DEU certo <3 REP+
-
Não aparece nem um erro, simplesmente não funciona
-
Bom eu coloquei tile level no meu servidor, mas ele não funfa... todos os leveis podem passar nele..... Script do movements.xml <movevent type="StepIn" actionid="24003" event="script" value="tilelevel.lua"/> Script do movements\scripts function onStepIn(cid, item, position, fromPosition) level = 600 if getPlayerLevel(cid) < level then doTeleportThing(cid, fromPosition, true) doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_RED) doPlayerSendCancel(cid,"Only level " .. level .. " or more can pass here.") end return TRUE end Como arrumar?
-
é o seguinte, tenho um NPC de TASK, mas se tu tiver muitos itens ele da o premio varias vezes... quero apenas q ele de o premio 1x e depois não dê mais ! SCRIPT DELE 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 msg = string.lower(msg) --------- local need = { {id = 2092, qt = 1}, --diamond } local rewards = { {id = 14252, qt = 1}, --mega Stone {id = 12618, qt = 20}, --booststone } local stoFinish = 92119 --------- if msgcontains(msg, 'help') or msgcontains(msg, 'ajuda') then if getPlayerStorageValue(cid, stoFinish) >= 99 then selfSay("Sorry, you already had done this quest.", cid) talkState[talkUser] = 0 return true end selfSay("Olá meu amigo, sou o NPC de trocas, me dê 1 Bone Chave e lhe darei 1 Mega Stone ! Diga YES para trocarmos",cid) talkState[talkUser] = 1 return true elseif msgcontains(msg, 'yes') or msgcontains(msg, 'sim') and talkState[talkUser] == 1 then if getPlayerItemCount(cid, need[1].id) < need[1].qt then selfSay("Você não me trouxe a Bone Chave...", cid) selfSay("Lembre-se, eu preciso de 1 Bone Chave...", cid) talkState[talkUser] = 0 return true end local sto = getFreeTaskStorage(cid) if sto == -1 then selfSay("Você não pode fazer essa TASK NoVamente VocÊ ja fez o max de "..(maxTasks).." tasks!", cid) talkState[talkUser] = 0 return true end for i = 1, #need do doPlayerRemoveItem(cid, need[i].id, need[i].qt) end for i = 1, #rewards do doPlayerAddItem(cid, rewards[i].id, rewards[i].qt) doPlayerAddExperience(cid, 0) end selfSay("Obrigado, tchau!", cid) setPlayerStorageValue(cid, stoFinish, 1) talkState[talkUser] = 0 return true end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
-
Meu erro é o seguinte ! [18/03/2016 17:15:36] [Warning - Spells::registerEvent] Duplicate registered instant spell with words: spell022 [18/03/2016 17:15:36] [Error - LuaScriptInterface::loadFile] data/talkactions/scripts/rainitems_command.lua:5: unexpected symbol near '[' [18/03/2016 17:15:36] [Warning - Event::loadScript] Cannot load script (data/talkactions/scripts/rainitems_command.lua) [18/03/2016 17:15:36] data/talkactions/scripts/rainitems_command.lua:5: unexpected symbol near '[' Script >>\/ local config = { items = {{2391,1}, {2392,2}, {2160,10}, {11638,1}, {11639,1}, {11640,1}, {14185,1}, {14188,1}, {14186, 1}}, interval = 1000, -- time between checks areas = [1] = { waves = 2, interval = 10000, chancePerTile = 10, -- % maxItemsPerWave = 7, from = {x = 1047, y = 1055, z = 7}, to = {x = 1071, y = 1060, z = 7} }, } function Position.isPathable(pos) local tile = Tile(pos) if tile == nil then return false end return not tile:hasFlag(TILESTATE_BLOCKSOLID) end function rainWave(arena) local from = config.areas[arena].from local to = config.areas[arena].to local items_spawned = 0 for x = from.x, to.x do for y = from.y, to.y do for z = from.z, to.z do if math.random(1, 100) < config.areas[arena].chancePerTile and items_spawned < config.areas[arena].maxItemsPerWave then local pos = {x = x, y = y, z = z} if Position(pos):isPathable() then local item = math.random(1, #config.items) doCreateItem(config.items[item][1], math.random(1, config.items[item][2]), pos) Position(pos):sendMagicEffect(CONST_ME_MAGIC_RED) items_spawned = items_spawned + 1 end end end end end end function startRain(arena) broadcastMessage("Uma Chuva de ITENS vem AE!") for i = 1, config.areas[arena].waves do if i == 1 then rainWave(arena) else addEvent(rainWave, config.areas[arena].interval * (i - 1), arena) end end addEvent(broadcastMessage, config.areas[arena].interval * (config.areas[arena].waves - 1), "Chuva PAROU.") end function onSay(player, words, param) if not player:getGroup():getAccess() then return false end if tonumber(param) then startRain(tonumber(param)) else player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, words .. " eventid") end return false end
-
Poh fico feliz ouvindo isso ! vou fazer de tudo pra melhorar <3
-
Como poderia coloca-lo apenas pra VIP's?
-
Fiz um CP para minha ILHA Nightmare, é um PROJETO de NIGHTMARE World QUEST que estou fazendo ! Ficou bom? Dicas? Não sou Mapper, Sou Aprendiz !
-
Como funcionaria esse SCRIPT? pois EXTRA LOOT é meio inutil tendo como ADICIONAR mais loots no XML dos monstros ! Ou ficaria UTIL se coloca-se apenas para VIP ganhar esse EXTRA LOOT !
-
É que eu peguei o SCRIPT de meu SERVIDOR ! se quiser eu posto o download e o scan ! dentro do script não tem creditos se não eu postaria com certeza ! Galerinha, relaxa ! ainda estou aprendendo sobre SCRIPT Ainda estou no BASICO E eu sou novo nessa area, desculpe qualquer erro rs !
- 8 respostas
-
- texto no chão
- texto
-
(e 1 mais)
Tags:
-
Bom dia, Boa tarde e Boa noite ! Pesquisei e vi que tinha uns topicos bem antigos de texto no chão, mas todo com falta de explicação ! Então decidi CRIAR esse para resolve isso ! Bom vamos COMEÇAR ! Vá em globalevents/scripts e crie uma pata .lua chamada textochao.lua e ADICIONE isso dentro da pasta ! local config = { positions = { ["OutlandSul"] = { x = 1026, y = 1074, z = 13 }, ["OutlandNorte"] = { x = 1022, y = 1074, z = 13 }, ["OutlandLeste"] = { x = 1030, y = 1074, z = 13 }, ["Outlands"] = { x = 948, y = 1090, z = 13 }, ["BoostMachines"] = { x = 1032, y = 1055, z = 13 }, ["Coliseum"] = { x = 1032, y = 1057, z = 13 }, ["AREA VIP"] = { x = 1053, y = 1046, z = 5 }, ["Quest VIP 150+"] = { x = 1065, y = 1049, z = 5 }, ["Quest VIP 250+"] = { x = 1067, y = 1049, z = 5 }, ["Sala de Eventos"] = { x = 1063, y = 1047, z = 5 }, ["Nova Área"] = { x = 449, y = 817, z = 13 }, ["Saída"] = { x = 458, y = 826, z = 14 }, ["Lilicove City"] = { x = 948, y = 1093, z = 13 }, ["Nightmare World"] = { x = 1056, y = 1042, z = 5 }, ["BOX 5 VIP"] = { x = 1070, y = 1049, z = 5 }, } } function onThink(cid, interval, lastExecution) for text, pos in pairs(config.positions) do doSendAnimatedText(pos, text, math.random(1, 255)) end return TRUE end Depois vá em data\globalevents abra o globalevents.xml e ADICIONE essa TAG <globalevent name="animatedtext" interval="1" script="textochao.lua"/> Bom vamos as explicações ! para MUDAR o local onde o texto sai, você mexe aqui - { x = 1026, y = 1074, z = 13 }, como pode ver todos tem isso ! Para mudar o NOME do texto você mexe em ["OutlandSul"] Todos tem isso também, você pode mudar de todos ! Para mudar o intervalo de tempo que o texto aparece e desaparece vá no GLOBALEVENTS.XML e na tag vai estar assim -- <globalevent name="animatedtext" interval="1" script="textochao.lua"/> Ali no numero vermelho, é o segundos de intervalo, não coloquei menos que 1 :3 Bom, para meu segundo topico, prevejo pessoas falando que ja tinha tals, mas esse é mais explicado !
- 8 respostas
-
- texto no chão
- texto
-
(e 1 mais)
Tags:
-
é que eu peguei do meu ot nem me dei conta de explicar, mals :x ah sobre o topico :3 Obrigado, isso me incentiva mais <3
-
Bom galera meu PRIMEIRO topico ajudando tais PLAYERS ! o SCRIPT eu achei dentro de meu servidor ! é assim, quando o player se torna vip GANHA um BONUS exp a mais do que os SEM VIP ! vamos lá Abra a PASTA data\creaturescripts e abra a pasta creaturescripts.xml e cole isso lá dentro ! <event type="login" name="ExpVip" event="script" value="vipexp.lua"/ Feito isso abra data\creaturescripts\scripts e crie uma pasta .lua chamada vipexp e coloque isso lá dentro function onLogin(cid) local rate = 3.0 -- 200 % local config = { welvip = "Você tem "..((rate - 1)*100).."% de EXP à mais!", not_vip = "Torne-se VIP e ganhe "..((rate -1)*100).."% à mais de EXP!", vip = isPremium(cid) } if (config.vip == TRUE) then doPlayerSetExperienceRate(cid, rate) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.welvip) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, config.not_vip) end return true end Feito isso, abra o login.lua e adicione essa TAG registerCreatureEvent(cid, "ExpVip") Bom como modificar? Simples ! Ali onde esta local local rate = 3.0 -- 200 % 1.2 seria 20% então 1.5 seria 50% 3.0 é 200% e 4.0 é 300% Tentei explicar o mais resumido possivel Obrigado
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.