CARA FANTASTICOOOOOOOOOOOOOOOOOOOOOOOO!!! FUNFO BLZ AKI TU E DO NIVEL DE COLEX NOS SCRIPTS PARABENS MESMO N ESKECENDO CONDE SAPO E NEM do tibi4ee
- Fórum
- OTServ
- Recursos
- Scripting
- Actions e Talkactions
- Dinastias - Sensor System By Dokmos
Dinastias - Sensor System By Dokmos
Por Dokmos, 15 de dez. de 2008 em Actions e Talkactions
info
Grupo: Artesão
Registrado: 21/02/07
Posts: 137
Reputação: +1
Char no Tibia: GOD Grimrath

Editado Dezembro 15 por h3online
info
Grupo: Campones
Registrado: 29/11/07
Posts: 81
Reputação: +4
Char no Tibia: Dokmos

Obrigado h3online,
Espero estar sempre contribuindo com o que tenho aprendido para aqueles que estão inciando nos scripts, pois sei como é difícil no começo e que acima de tudo é preciso ter vontade de crescer e superar-se! :smile_positivo:
é, mereceu o 2° lugar naquele torneio... :-D
só achei que deveria ter encurtado mais U.u
tá muito grande e sem necessidade..
em breve eu posto o meu script. :-P
Editado Dezembro 15 por Eventide
info
Grupo: Campones
Registrado: 29/11/07
Posts: 81
Reputação: +4
Char no Tibia: Dokmos

Obrigado Eventide,
Gostaria de ver seu script
e sobre o tamanho do meu script, eu o fiz antes de ler aqueles tutoriais de tabelas e vetores, aliás seu tutorial de maths ficou muito bom! :positive:
info
Grupo: Visconde
Registrado: 19/06/07
Posts: 267
Reputação: +1
Gênero: Masculino
Char no Tibia: Rambocop Infernus

Muito bom este script! Só por na entrada
da hunt e ver se alguem esta invadindo a cave...
Parabéns e obrigado por compartilhar!!! :smile_positivo:
info
Grupo: Visconde
Registrado: 10/06/06
Posts: 338
Reputação: +6
Char no Tibia: Setyte Berseker

Gostei da idéia, bastante criativo e nada complexo de se fazer.
Nesse caso aí nem precisava declarar as funções como local já que o sistema de scripting dos servidores atual itera cada código individualmente. Claro, se você for criar funções de mesmo nome que essas, aí sim vale a pena usar as funções locais. O strackback não é muito preciso em qualquer tipo de declarações do tipo local, até mesmo para localização via _G.
info
Grupo: Campones
Registrado: 29/11/07
Posts: 81
Reputação: +4
Char no Tibia: Dokmos

Obrigado Nostradamus
Na verdade sempre tive esta dúvida de colocar ou não o local, valeu! ![]()
info
Grupo: Artesão
Registrado: 07/10/06
Posts: 108
Reputação: 0
Char no Tibia: Vi Vanderlaysk

Aee \o/
Mto roxx ;}
Mas funfa em TFS ?
testei aki no meo ot e ele equipo e talz
mas num detecto nada .. passei por um monte de bixos no mesmo lugar várias vezes e ele num fez nada ...
Tem como fazer ele funfar equipando tipo como um amulet .. igual as Soft Boots?
[onEquip] ? tentei colocar isso em vez de [onUse]
Abraço !
e Obrigado pelo script ![]()
info
Grupo: Campones
Registrado: 29/11/07
Posts: 81
Reputação: +4
Char no Tibia: Dokmos

Vi Vanderlaysk,
Ele funciona sim em TFS, você tem que ver se a versão do seu TFS aceita a função doPlayerSetNoMove ou mayNotMove, aí é só trocar no script.
É possível utilizá-lo onEquipe, você precisaria adaptar alguns detalhes.
info
Grupo: Artesão
Registrado: 07/10/06
Posts: 108
Reputação: 0
Char no Tibia: Vi Vanderlaysk

Huumm .. interessante ... mas entao ..
Pode me dizer como faço isso ?
Eh que nao sou scripter... tenho alguma dificuldades ainda de saber o que fazer em relaçao a scripst lua ;P
e tipo ... quando a gente coloca alguma coisa no OT e quer colocar créditos de alguma coisa
que é criada por outra pessoa ... qual a melhor forma de fazer isso ?
Por exemplo ... meu OT vai ser sério ... entao eu queria clocar créditos desse sistema pra vc, Dokmos...
Eu colocaria alguma coisa no proprio item ou na MOTD (Message of the Day) ?
Da um help ae xDD
Abraço!
Rox...
Tem também como você posta o sistema de Magias =D
info
Grupo: Campones
Registrado: 29/11/07
Posts: 81
Reputação: +4
Char no Tibia: Dokmos

Huumm .. interessante ... mas entao ..
Pode me dizer como faço isso ?
Eh que nao sou scripter... tenho alguma dificuldades ainda de saber o que fazer em relaçao a scripst lua ;P
e tipo ... quando a gente coloca alguma coisa no OT e quer colocar créditos de alguma coisa
que é criada por outra pessoa ... qual a melhor forma de fazer isso ?
Por exemplo ... meu OT vai ser sério ... entao eu queria clocar créditos desse sistema pra vc, Dokmos...
Eu colocaria alguma coisa no proprio item ou na MOTD (Message of the Day) ?
Da um help ae xDD
Abraço!
Obrigado pelo reconhecimento, melhor que ver o trabalho elogiado é vê-lo reconhecido! Isso até motiva scripters a compartilhar suas funções, actions e seus melhores trabalhos, pois além dos jogadores terem seus OT's com ótimas actions os progamadores têm seu trabalho reconhecido! ![]()
Você pode colocar no MOTD Sensor System by Dokmos, é só você adicionar esta linha na linha 70 do script:
doPlayerSendCancel(cid,"Sensor System by Dokmos.")
Então o script ficará assim:
..
.
local function doAddSensor(cid,time,tilepos)
if time > 0 then
doPlayerSendTextMessage(cid,24,"Planting sensor in "..time.." seconds.")
doPlayerSendCancel(cid,"Sensor System by Dokmos.")
time = (time-1)
addEvent(doAddSensor,1000,cid,time)
else
pos = getThingPos(cid)
doPlayerSendTextMessage(cid,24,"Sensor was successful planted.")
doSendMagicEffect(pos,3)
doPlayerSetNoMove(cid,0)
doSendDuration(cid,pos,SENSOR_DELAY_MINUTES,SENSOR_DELAY_SECONDS)
addEvent(doVerifySensor,3000,cid,pos)
end
end
.
.
.
E novamente obrigado! Em breve libero outras actions bem legais... :positive:
Editado Dezembro 22 por Dokmos
info
Grupo: Campones
Registrado: 23/07/06
Posts: 20
Reputação: 0
Char no Tibia: Eckous

info
Grupo: Visconde
Registrado: 05/10/06
Posts: 381
Reputação: +7

Parabens Dokmos muito bom o script, bem inovador mesmo!






info
Grupo: Campones
Registrado: 29/11/07
Posts: 81
Reputação: +4
Char no Tibia: Dokmos
Action Sensor System
by Dokmos
-----------------------------------------------
Aqui está o script que desenvolvi liberado do Dinastias, espero que gostem e divirtam-se!
-----------------------------------------------
Características
A action é simples, o jogador instala o sensor no solo e este tem um certo tempo de duração, qualquer criatura que passar no local que o sensor está instalado enviará automaticamente uma menssagem de alerta para o jogador que instalou o sensor e se essa criatura for um jogador, após alguns segundos ele recebe um alerta que sua posição foi localizada por um sensor instalado.
-----------------------------------------------
Instalação
Salve essa função como data\actions\scripts\sensor.lua
------------------ Sensor System by Dokmos ------------------ local ACTIONID_EMPTY = 5000 -- Actionid livre para utilização. local STORAGE_EMPTY = 5000 -- Storage para o jogador livre para utilização. local PLANTING_DELAY = 5 -- Tempo de duração para instalar o sensor no solo em segundos. local SENSOR_DELAY_MINUTES = 5 -- Minutos de duração do sensor. local SENSOR_DELAY_SECONDS = 0 -- Segundos de duração do sensor (Lembre-se Minutos:Segundos). local function doSendAlert(cid,creature) if isCreature(creature) == TRUE then if isPlayer(creature) == TRUE then doPlayerSendTextMessage(creature,20,"You was localized by "..getPlayerName(cid)..".") end doSendMagicEffect(getThingPos(creature),13) if getPlayerStorageValue(cid,STORAGE_EMPTY) == 2 then setPlayerStorageValue(cid,STORAGE_EMPTY,1) end end end local function doVerifySensor(cid,pos) if isPlayer(cid) == TRUE then creature = getThingfromPos(pos) if isPlayer(creature.uid) == TRUE and getPlayerStorageValue(cid,STORAGE_EMPTY) == 1 then setPlayerStorageValue(cid,STORAGE_EMPTY,2) doPlayerSendTextMessage(cid,20,"Sensor has localized "..getPlayerName(creature.uid).." a "..getPlayerVocationName(creature.uid).." Level "..getPlayerLevel(creature.uid)..".") addEvent(doSendAlert,2000,cid,creature.uid) elseif isCreature(creature.uid) == TRUE and getPlayerStorageValue(cid,STORAGE_EMPTY) == 1 then setPlayerStorageValue(cid,STORAGE_EMPTY,2) doPlayerSendTextMessage(cid,20,"Sensor has localized a "..getCreatureName(creature.uid)..".") addEvent(doSendAlert,2000,cid,creature.uid) end if getTileThingByPos({x=pos.x,y=pos.y,z=pos.z,stackpos=0}).actionid == ACTIONID_EMPTY then addEvent(doVerifySensor,100,cid,pos) end end end local function doSendDuration(cid,pos,minutes,seconds) if isPlayer(cid) == TRUE then if seconds > 0 then if minutes < 10 and seconds < 10 then doPlayerSendTextMessage(cid,25,"Duration of Sensor: 0"..minutes..":0"..seconds.." minutes.") elseif minutes < 10 then doPlayerSendTextMessage(cid,25,"Duration of Sensor: 0"..minutes..":"..seconds.." minutes.") else doPlayerSendTextMessage(cid,25,"Duration of Sensor: "..minutes..":"..seconds.." minutes.") end seconds = (seconds-1) addEvent(doSendDuration,1000,cid,pos,minutes,seconds) else if minutes > 0 then doPlayerSendTextMessage(cid,25,"Duration of Sensor: "..minutes..":0"..seconds.." minutes.") minutes = (minutes-1) seconds = 59 addEvent(doSendDuration,1000,cid,pos,minutes,seconds) else doPlayerSendTextMessage(cid,25,"Duration of sensor has finished.") doSendMagicEffect(pos,4) doSetItemActionId(getThingfromPos({x=pos.x,y=pos.y,z=pos.z,stackpos=0}).uid,100) setPlayerStorageValue(cid,STORAGE_EMPTY,0) end end else doSetItemActionId(getThingfromPos({x=pos.x,y=pos.y,z=pos.z,stackpos=0}).uid,100) end end local function doAddSensor(cid,time,tilepos) if time > 0 then doPlayerSendTextMessage(cid,24,"Planting sensor in "..time.." seconds.") time = (time-1) addEvent(doAddSensor,1000,cid,time) else pos = getThingPos(cid) doPlayerSendTextMessage(cid,24,"Sensor was successful planted.") doSendMagicEffect(pos,3) doPlayerSetNoMove(cid,0) doSendDuration(cid,pos,SENSOR_DELAY_MINUTES,SENSOR_DELAY_SECONDS) addEvent(doVerifySensor,3000,cid,pos) end end function onUse(cid, item, fromPosition, itemEx, toPosition) local pos = getThingPos(cid) if getTileThingByPos({x=pos.x,y=pos.y,z=pos.z,stackpos=0}).actionid <= 100 and getPlayerStorageValue(cid,STORAGE_EMPTY) < 1 then doSetItemActionId(getThingfromPos({x=pos.x,y=pos.y,z=pos.z,stackpos=0}).uid,ACTIONID_EMPTY) setPlayerStorageValue(cid,STORAGE_EMPTY,1) addEvent(doAddSensor,0,cid,PLANTING_DELAY,tilepos) doPlayerRemoveItem(cid,5809,1) doPlayerSetNoMove(cid,1) return TRUE else return FALSE end endAgora, adicione este código em data\actions\actions.xml
-----------------------------------------------
Funcionamento
Você pode editar o script com as configurações que você desejar, eu coloquei as principais no começo do script, caso você não tenha certeza deixe o padrão como está. Qualquer erro ou bug no script poste aqui para eu dar uma verificada, lembrando que a configuração em seu OT fica nas mãos de vocês.
Para utilizar o sensor basta você dar um use no item 5809 (soul orb) e aproveitar!!!
:positive:
Atenciosamente,
Dokmos
Editado Dezembro 15 por Dokmos