67

System Vip Para Poder Pisar No Tile

Por 67060608, 26 de out. de 2010 em Actions e Talkactions

script
12
4.2k
670606086
26 de outubro de 2010 às 12:51

Eae To Alegre Por Ter Criado esse script e o system vip que pode pisar no tile.

testado em 8.50 TFS 0.3.6

Bem Assim Que Funciona o player fala !buyvip e tem acesso a area vip so que e um tile que ele pode pisar então vamos ao que interresa.

 

Abra seu mapa editor escolha qualquer tile da sua preferência e coloque na sua area VIP Depois Va Na Propiedade do Tile E Adicione isso.

Action ID: 13540

 

adicione essa action id em todos os seus tiles da sua area vip.

agora abra a PastaDoOt/data/movements/scripts copie qualqer arquivo e de o nome de vip.lua abra o apage tudo e ponha isso

 

--meu melhor script By Kung Lao MLK Fodastico kkkk
function onStepIn(cid, item, pos)



-- aqui e aonde ele vai teleportar o player se ele nao for vip
teleport1 ={x=160, y=54, z=7}



if isPlayer(cid) then

if item.actionid == 13540 then

vip = getPlayerStorageValue(cid,13540)
if vip == -1 then
doPlayerSendCancel(cid,"So players Vip podem ter acesso aos Teleports vip.")


doTeleportThing(cid,teleport1)


else
end
end
end
end

 

Va No movements.xml e adicione essa tag

<movevent type="StepIn" actionid="13540" event="script" value="vip.lua" />

 

agora va na pasta talkactions va na pasta script copie qualquer arquivo de o nome de buyvip.lua abra o apage tudo la dentro e cole isso

--Eu so d+ kung lao aqui 
function onSay(cid, words, param)
if doPlayerRemoveMoney(cid, 2000000) == TRUE then
setPlayerStorageValue(cid,13540,1)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Parabens agora voce e vip.")
doSendMagicEffect(getPlayerPosition(cid), 28)
else
doPlayerSendCancel(cid, "Voce precisa de 2kk para comprar Vip.")
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce nao tem 2kk para comprar Vip.")
doSendMagicEffect(getPlayerPosition(cid), 2)
end
end

 

abra o talkactions.xml e adicione essa tag

 

<talkaction words="!buyvip" event="script" value="buyvip.lua"/>

 

modica ae como vc quiser to atrazado para o curso duvidas posta ae e se eu te ajudei posta ae e da REP +

thaliaT
26 de outubro de 2010 às 21:52

akopskopas

 

tá evoluindo hein !

 

Parabens

670606086
26 de outubro de 2010 às 22:03

akopskopas

 

tá evoluindo hein !

 

Parabens

 

Vlw

 

Sim to evoluindo e evoluindo os ots dos cara que olham meus Posts. =) mais to sem ideias para novos scripts para mandar para o XTIBIA Porque aqui tem tudo que voce pode imaginar!!!!.

Aliais Esse E Meu 4º script

mas nao para por ai vai vim muito mais =).

Ate+

Flw Ate + se cuida mano

kymarooK
29 de outubro de 2010 às 20:30

mto bom mais daqui a pouco eu também estarei evoluindo :thumbsupsmiley:

Eu estou editando uns scripts :bigboulay:

670606086
29 de outubro de 2010 às 20:43

@Jakamily

 

E Meu Manin(meu melhor amigo da vida real) voce vai evoluir sim um dia sua hora de scriptear e postar no XTIBIA vai chegar!.

 

ate o MSN

 

abraços

31 de outubro de 2010 às 01:24

Olha... eu sou um iniciante na arte de scriptar(uauauahu) gostaria de saber como que eu faco para por o arquivo movements.xml no meu OT...

versao 7.6

E tambem... pq quando eu edito o itens.xml n modifica nada in-game

VLW

670606086
31 de outubro de 2010 às 11:15

@GOD Frizza

 

Nao Entendi sobre O Moviments.XML Voce Nao Tem O Moviments.XML ou nao sabe adicionar a TAG.

 

E os Items Voce Nao Explicou direito.

 

Explica Melhor o seu problema para eu resoolver =).

lollipopsL
02 de novembro de 2010 às 02:31

Muito bom script... testei no meu server ja... velho ve se tu consegue faze um que ao por um item em um local... e puxar uma lavanca ele voce se teletransporta para outro lugar... mais so pode puxa a lavanca se tive o item saca? ve ai se consegue... qlq coisa me manda pm ;x

3 semanas depois...
linkayL
22 de novembro de 2010 às 14:12

O script funciona sim, mas procure ler mais tutorias sobre logica de programação.

Vou te mostrar alguns erros basicos no seu script.

 

 

--meu melhor script By Kung Lao MLK Fodastico kkkk
function onStepIn(cid, item, pos)



-- aqui e aonde ele vai teleportar o player se ele nao for vip
teleport1 ={x=160, y=54, z=7}



if isPlayer(cid) then

if item.actionid == 13540 then

vip = getPlayerStorageValue(cid,13540)
if vip == -1 then
doPlayerSendCancel(cid,"So players Vip podem ter acesso aos Teleports vip.")


doTeleportThing(cid,teleport1)


else
end
end
end
end

 

if item.actionid == 13540 then

Isto numca foi nescessario, se você for parar pra pesar, esta ação só irá ser ativada se a actionid do item for 13540, por já estar indicada no movements.xml. Sendo assim iremos retirar um END do final.

 

vip = getPlayerStorageValue(cid,13540)
if vip == -1 then

 

Procure ultilizar menos variaveis, isto vai deichar seu script mais funcional, e mais visualmente organizado.

Ficando assim:

 

if getPlayerStorageValue(cid,13540) == -1 then

 

E ainda tem o ELSE ali no final, porque isso ?

Se voce nao quer que aconteça nada se a condição retornar FALSE, apenas não adicione nada. :)

 

E numca se esqueça de adicionar um RETURN antes do ultimo END, para garantir que a ação se complete.

 

Terminando assim:

function onStepIn(cid, item, pos)

teleport1 ={x=160, y=54, z=7} -- aqui e aonde ele vai teleportar o player se ele nao for vip

if isPlayer(cid) then
if getPlayerStorageValue(cid,13540) == -1 then
doPlayerSendCancel(cid,"So players Vip podem ter acesso aos Teleports vip.")
doTeleportThing(cid,teleport1)
end
return
end

 

Observe a diferença de tamanho, e que de 4 ENDs, foi reduzido para 2.

Editado Novembro 22 por linkay

1 ano depois...
exorcistE
20 de novembro de 2011 às 15:56

legal vo tsta agr o script :D

1 ano depois...
pablopacottyP
04 de abril de 2013 às 12:20

mano se eu quizer fazer isso mais mudar if doPlayerRemoveMoney(cid, 2000000) == TRUE then DE para if doPlayerRemoveItem(cid, 12385) == TRUE then ( funciona? ) esperando resposta se alguem me ajduar a botar sistema vip com item do +rep :D

2 semanas depois...
FenixBorgesF
16 de abril de 2013 às 16:59

TA, e éssa VIP numca acaba?! -.-'