Tudo que Cazuza postou
-
Duvida funçao doRemoveItem
playerpos = {x=1026, y=915, z=7} if getThingFromPos(playerpos).itemid > 0 then if getTileItemById(playerpos, 1387) == false then doCleanTile(playerpos) end end
-
Duvida funçao doRemoveItem
playerpos = {x=1026, y=915, z=7} if getThingFromPos(playerpos).itemid > 0 then if getTileItemById(playerpos, 1387) then return else doCleanTile(playerpos) end end Teste assim!
-
Item que adiciona Vida ao player
local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_STAT_MAXHEALTH, 50) function onEquip(cid, item, slot) if isPlayer(cid) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Now that you're using this item you'll receive a special bonus...") doAddCondition(cid, condition) doSendMagicEffect(getCreaturePos(cid), 10) return true end end function onDeEquip(cid, item, slot) if isPlayer(cid) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You're no longer receiving the special bonus..") doRemoveCondition(cid, CONDITION_ATTRIBUTES) return true end end Não tenho certeza. Mas teste agora.
-
ka zuza por favor!
Gostei da brincadeira.
-
ka zuza por favor!
Quero ver quem paga Pra gente ficar assim! HAHAHAHA
-
[Creaturescripts] Experiencia para Guild (por nº de Jogadores Online)
Obrigado pelo REP. não saberei te ajudar, deve ser pela versão do teu servidor. Por que aqui funciona perfeito, e a logica da programação eu ão saberia alterar.
-
[Creaturescripts] Experiencia para Guild (por nº de Jogadores Online)
Se tu postar o erro pode ser que sim. Que versão tu utiliza?
- Alteração na visão do PLAYER
-
(Resolvido)[Pedido] Script golden vip.
Querido ta funcionando assim: Ao usar 3 vezes o VIP normal, na terceira ele ganha a GOLDEN VIP, e zera a contagem. Ou seja ganha GOLDEN VIP de 3 em 3 vips normais. Se quiser que eu altere isso, para apartir da terceira toda vez que ele usar vip ja ganhar golden vip avisa. Storage da VIP normal = 13720 Storage Golden VIP = 13722 Não testei mas creio estar funfando corretamente, abraço! function onUse(cid, item, fromPosition, itemEx, toPosition) local config={ removeOnUse = "yes" -- remover quando usar ("yes" or "no") } local days = 31 -- dias que serão adicionados local daysvalue = days * 24 * 60 * 60 local storageplayer = getPlayerStorageValue(cid, 13720) local timenow = os.time() if getPlayerStorageValue(cid, 13721) == -1 then setPlayerStorageValue(cid, 13721, 0) end ---------------------------------------------- if getPlayerStorageValue(cid, 13720) - os.time() <= 0 then time = timenow + daysvalue else time = storageplayer + daysvalue end ---------------------------------------------- doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram adicionados ".. days .." dias de FosterVIP no seu character.") setPlayerStorageValue(cid, 13720, time) setPlayerStorageValue(cid, 13721, getPlayerStorageValue(cid, 13721) + 1) if getPlayerStorageValue(cid, 13721) >= 3 then setPlayerStorageValue(cid, 13722, time) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce ganhou FosterVIP GOLD no seu character.") end local quantity = math.floor((getPlayerStorageValue(cid, 13720) - timenow)/(24 * 60 * 60)) doSendMagicEffect(getPlayerPosition(cid), math.random(28,30)) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem ".. quantity .." dias de FosterVIP restantes.") if (config.removeOnUse == "yes") then doRemoveItem(item.uid, 1) end return TRUE Atualizado!
-
[Dúvid] spell de player em bixo ... como arrumar
local tempo = 60 local effect = {221} local points = 30 local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, points) setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, points) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, points) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, points) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, points) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, points) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, points) setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE) setCombatCondition(combat, condition) local function Magica(tempo2,tempo3,cid) if isPlayer(cid) then for i=1, #effect do local position = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z} doSendMagicEffect(position, effect[i]) end end end function onCastSpell(cid, var) if exhaustion.check(cid, 102053) == FALSE then doCombat(cid, combat, var) tempo2 = 0 while (tempo2 ~= (tempo*1000)) do addEvent(Magica, tempo2, tempo2, tempo*1000, cid) tempo2 = tempo2 + 300 end local position = {x=getCreaturePosition(cid).x, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z} exhaustion.set(cid, 102053, 60.1) doCreatureSay(cid, "Susano", TALKTYPE_MONSTER) doSendMagicEffect(position, 254) else doPlayerSendCancel(cid, "Desculpa,Voce ja esta transformado.") end end Agora acredito eu que so player poderá usar. Não testei, abraço.
- (Resolvido)[Pedido] Script golden vip.
-
[Ajuda] Spell de Cura
Poste uma magia de cura, mas creio que fizeram pra ser assim mesmo. Não sei por quais motivos... Deve ser algo em creatureevents, mande o que tem dentro do arquivo xml, do creatureevents.
-
[Pedido] Script
Meu querido, meu lindo e inteligente amigo. Eu não estou em casa agora. Mas por favor não precisava pedir algo tão "crucial" em qualquer servidor. Abra seu servidor na pasta npc e acha qualquer npc de barco e apenas edite. Creio que tu consiga fazer isto. Mas caso tu não consiga a script pro npc é esta, e não testei. local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 keywordHandler:addKeyword({'travel'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = '#1'}) npcHandler:addModule(FocusModule:new()) local travelNode = keywordHandler:addKeyword({'#2'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Do you wanna go to #2, are you sure?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = false, level = 1, cost = 0, destination = {x=32310, y=32210, z=6} }) -- #3 travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'Next time maybe.'}) #1 - Cidades que o npc vai levar. #2 - Nome da cidade #3 - Coordenadas ( não apaguei para servir de exemplo, como é por tabelas é mais dificil
-
[Ajuda] Anti Free Kill
Tenho um script, que não deixa logal de multi cliente, ou com mage bomb se te servir te mando.
-
Função que pega quantidade de item X na pos Y
local posicao = {x = 100, y = 100, z = 7} local item = 2160 getTileItemById(posicao,item) ou getTileItemById({x = 100, y = 100, z = 7},2160)
-
Script de Npc que da Level, Ajuda
NPC que tipo so falar, level. E ele te da 1 level pro vez?
- (Resolvido)[Pedido] Todos Players Premium Com Vip No Nome
-
(Resolvido)Para ser Teleportado precisa de determinado item
Absolute, creio não ter sido tu que fez. Mas mesmo que tenha sido ira dar erro. Alí em config.remover. Voce esta dizendo que a variavel esta dentro de uma tabela, que no caso não está. Mas é so esse erro simples.
-
[Creaturescripts] Experiencia para Guild (por nº de Jogadores Online)
Obrigado brother. Espero ter ajudado mais membros do forum com ela.
-
(Resolvido)Potions sumindo
Posta o Script para que possamos ajuda-lo. Ninguem aqui tem bola de cristal. Ele se encontra em actions, others, potions. Se não me engano.
-
(Resolvido)Exp por Player Online na GUILD
Então está ai, a versão 1.0 pronta! HEHE - http://www.tibiaking.com/forum/topic/36654-creaturescripts-experiencia-para-guild-por-n%C2%BA-de-jogadores-online/
-
[Creaturescripts] Experiencia para Guild (por nº de Jogadores Online)
Nome: Experiencia para Guild Função: A pedidos de um membro do forum (TioSlash). Aqui está um script que ira adicionar uma porcentagem de Experiência por jogadores online. Exemplo: Ao alcançar 5 jogadores da Guild Online, todos que estiverem online recebem 2% de xp adicional por jogador. Ou seja, um total de +10% de xp. Bom para servidores com bastante RPG, incentivando a cooperação. Atualizações: Dia 17/08/2014 Versão: Testada somente na "10.31". (OTX Server - Galaxy) Créditos: Kazuza - (eu) Por ter criado. TioSlash - Pela Ideia. Vodkart - Por ter achado a função dele que retorna os jogadores da Guild ( sem ela com meu nivel de script não teria conseguido). xWhiteWolf - Por uma ajudinha. "Pasta Servidor > Data > Creaturescripts > Scripts" crie "ExpGuild.lua". function getGuildMembersOnline(GuildId) local players,query = {},db.getResult("SELECT `name` FROM `players` WHERE `rank_id` IN (SELECT `id` FROM `guild_ranks` WHERE `guild_id` = " .. GuildId .. ");") if (query:getID() ~= -1) then repeat table.insert(players,query:getDataString("name")) until not query:next() query:free() end return #players > 0 and players or false end function onLogin(cid) local guild_id = getPlayerGuildId(cid) local minimo = 2 local max = 2 local porcentagem = 2 ----------------------------------------- doPlayerSetExperienceRate(cid, 1) if guild_id == 0 then addEvent(doPlayerSendTextMessage, 200,cid, MESSAGE_STATUS_CONSOLE_RED,"[GUILD] Entre em uma guild para ter bonus de experiencia.") return true end if guild_id > 0 then local membros_online = table.maxn(getGuildMembersOnline(guild_id)) local tabela_membros = getGuildMembersOnline(guild_id) --if #getPlayersByIp(getPlayerIp(cid)) >= max then --doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED,"[GUILD] Players com Multi-Cliente nao contam para ganhar o bonus de experiencia.") --return true --end if membros_online <= minimo then addEvent(doPlayerSendTextMessage, 2000, cid, MESSAGE_STATUS_CONSOLE_RED,"[GUILD] Para ter bonus de experiencia precisa ter mais de "..minimo.." jogadores da guild online.\n Jogadores da Guild Online ["..membros_online.."]") return true end if membros_online > minimo then for var = 1, #tabela_membros do local nomes = getCreatureByName(tabela_membros[var]) local XP = ((membros_online*porcentagem) / 100) + 1.00 doPlayerSetExperienceRate(nomes, XP) addEvent(doPlayerSendTextMessage,1000,nomes, MESSAGE_STATUS_CONSOLE_RED, "[GUILD] A experiencia dos membros da guilda foi aumentada para +"..membros_online*porcentagem.."% - Membro "..getCreatureName(cid).." logou.") end return true end end end "Pasta Servidor > Data > Creaturescripts > Scripts" crie "ExpGuild_out.lua". function getGuildMembersOnline(GuildId) local players = {} for _, pid in pairs(getPlayersOnline()) do if getPlayerGuildId(pid) == tonumber(GuildId) then table.insert(players, getPlayerName(pid)) end end return #players > 0 and players or false end function onLogout(cid) if getPlayerGuildId(cid) == 0 then return true else local guild_id = getPlayerGuildId(cid) local membros_online = table.maxn(getGuildMembersOnline(guild_id)) local tabela_membros = getGuildMembersOnline(guild_id) local porcentagem = 2 local minimo = 2 ----------------------------------------- for var = 1, #tabela_membros do local nomes = getCreatureByName(tabela_membros[var]) local membros_online = membros_online - 1 if membros_online <= minimo then doPlayerSetExperienceRate(nomes, 1.0) doPlayerSendTextMessage(nomes, MESSAGE_STATUS_CONSOLE_RED,"[GUILD] Nao tem mais o numero de players necessarios para ganhar o bonus de experiencia - Membro "..getCreatureName(cid).." deslogou.") end if membros_online > minimo then local XP = ((membros_online*porcentagem) / 100) + 1.00 doPlayerSetExperienceRate(nomes, XP) doPlayerSendTextMessage(nomes, MESSAGE_STATUS_CONSOLE_RED, "[GUILD] A experiencia dos membros da guilda foi ajustada para "..membros_online*porcentagem.."% - Membro "..getCreatureName(cid).." deslogou.") end end return true end end "Pasta Servidor > Data > Creaturescripts" em creaturescripts.xml adicione: <event type="login" name="ExpGuild" event="script" value="exp_guild.lua"/> <event type="logout" name="ExpGuild_out" event="script" value="exp_guild_out.lua"/> "Pasta Servidor > Data > Creaturescripts > Scripts" em login.lua adicione: Lá em baixo, onde tem registerCreatureEvent ponha esses dois: registerCreatureEvent(cid, "ExpGuild") registerCreatureEvent(cid, "ExpGuild_out") PS: Qualquer erro, postem. É muito importante. Como este é meu segundo script na vida. Pode ser que aconteça de dar erros. Eu testei pouco.
-
Spells mesmo Nome
Para remover mana, teria que ser direto na magia dai. Por que tu quer fazer de um jeito para cada.
- Criar teleport de evento automático
-
(Resolvido)ajuda trocar caveira do pk e da red por outra
Tem que mudar o tibia.pic. Existem programas para muda-lo aqui no TK.