Ir para conteúdo

Castle Invasion


Bruno

Posts Recomendados

Desculpem minha ausencia....não podendo responder seus posts...

porem fiquei 2 meses sem internet...mais prometo a partir de hoje estar responde tdo que quiserem sobre meus posts!

Link para o comentário
Compartilhar em outros sites

  • Respostas 36
  • Created
  • Última resposta

Top Posters In This Topic

ae velho...explica certo, o action 10029 coloca aonde? na grade, no chão debaixo da grade, em um tile que quem xegar lá, a guild ganhará a war...explica certo plx

 

vlw

 

plx ajuda...

 

meu ot é 8.1 e quando eu falo /begin "blábláblá n acontece nada, eu AXO que eu fiz tudo certo pq o cara n explico direito, o id 10029 põe onde?

alguem ajuda plx

 

vlw

Link para o comentário
Compartilhar em outros sites

ae...ja consegui arruma, o problema tava na parte do nome do castelo...

 

mas otra duvida..

 

quando a guerra acaba n tem algum jeito que manda todo mundo que ta la dentro pro templo?

 

vlw :smile_positivo:

Link para o comentário
Compartilhar em outros sites

  • 4 weeks later...
afffffffffffffffffffffffffffffffffffffffffffff, esse systema n é seu, adimite, esse systema é meu, vc pego la na ##### (Undead Slayer la), pode ate pegar meus posts, mas coloka meus creditos...

 

Se isto não é seu, você deveria pelo menos colocar os devidos créditos!

 

Belianmort, se isto é seu de verdade você deve reportar o tópico!

 

~~~>

Sobre o script

 

Cara, o script está ótimo, testei e funcionou!

Link para o comentário
Compartilhar em outros sites

-------------------------------

 

É o mesmo sistema de Ragnarok nas wars, a muito o que fazer, porem, compensara, pois o sistema é mto massa.

 

COMO É O SISTEMA?

 

QUANDO LIBERA A GUERRA, A GUILD QUE TOMAR PRIMERO O CASTELO GANHA UM ITEM, OU XP, OU LEVEL, A SER DECIDIDO PELO GOD, ALEM DO PRETIGIO

 

1º: Faça um castelo a seu gosto, e no fim dele coloque um piso especial.

 

2º: Coloque em TODOS :p os SQMs comuns do castelo, a actionid 10030, e no piso especial, coloque a actionid 10029.

 

3º: A entrada do castelo tem de ser de 3 QMS, e dps de feita a entrada, cerque-a de grade, para ninguem entrar no castelo, como na imagem abaixo (OBS: Ela não pode nem tem que ser uma house):

 

cior9.png

 

4º: Vamos aos scripts:

 

Va em data/movements/scripts, copie qualquer arquivo, remoneie para Castle Invasion, apague tudo dentro e coloque o codigo abaixo, não deixando de colocar a localização do templo onde pede:

 

----- Castle Invasion Sistem by Xtreme -----
function onStepIn(cid, item, pos) -- 

-------- ITEM --------

local n_action = 10030

local e_action = 10029

-------- FRASES --------

local msg_winner = "Parabéns! A sua guild ganhou! Vocês ganharam o castelo."

local msg_cannot = "Não esta havendo uma guerra para você ganha-la."

local msg_not_guild = "Em tempo de guerra, players sem guild não podem entrar no castelo."

local msg_not_guild_winner = "Desculpe, mas sua guild não ganhou, muito menos você tem guild."

-------- CORDENADAS --------

local temple_position = {x=, y=, z=} --- COLOQUE AQUI Posição do templo

-------- STORAGE --------

local the_storage = 63000

local new_storage = 1

local battle_storage = 0

local cannot_storage = -1

-------- SISTEMA --------

if item.actionid == e_action then
if getGlobalStorageValue(the_storage) == battle_storage then
	player_guild_winner = getPlayerName(cid)
	guild_winner = getPlayerGuildName(player_guild_winner)
	doPlayerSendTextMessage(cid,22,msg_winner)
	doPlayerSay(cid,"Hoje, a guild "..guild_winner.." sai com a vitoria do castelo, ganho pelo player "..player_guild_winner.." e pela ajuda de todos da guild. Parabens "..guild_winner.."!",9)
	doSendAnimatedText(pos,'Winner',5)
	setGlobalStorageValue(the_storage,new_storage)

elseif item.actionid == n_action then
if getGlobalStorageValue(the_storage) == battle_storage then
	if getPlayerGuildName(getPlayerName(cid)) == nil then
		doTeleportThing(cid,temple_position)
		doPlayerSendTextMessage(cid,22,msg_not_guild)

elseif getGlobalStorageValue(the_storage) == new_storage then

	if getPlayerGuildName(getPlayerName(cid)) ~= guild_winner then
		doTeleportThing(cid,temple_position)
		doPlayerSendTextMessage(cid,22,"Desculpe! Sua guild perdeu, a guild que ganhou foi '..guild_winner..'.")
		doSendAnimatedText(temple_position,"Loser",18)

	elseif getPlayerGuildName(getPlayerName(cid)) == nil then
		doTeleportThing(cid,temple_position)
		doPlayerSendTextMessage(cid,22,msg_not_guild_winner)

	end
	end
end
end
end
end

 

Agora, para você decidir quando começar a guerra e para tirar aquelas grades, precisa ter um comando:

 

Va em data/talkaction/scripts, copie qualquer arquivo, renomeie para begin, apague tudo dentro, e coloque isto no lugar, não esquecendo de colocar o nome do castelo, a localização das grades, e a id da grade onde esta pedindo:

 

function onSay(cid, words, param)

-------- NOME --------

local castelo_name = Y --- COLOQUE AQUI O NOME DO CASTELO

-------- CORDENADAS --------

local wall_1 = {x=, y=, z=, stackpos=1} --- COLOQUE AQUI A Posição da primeira grade que esta tampando a entrada do castelo
local item_to_remove_1 = getThingfromPos(wall_1)

local wall_2 = {x=, y=, z=, stackpos=1} --- COLOQUE AQUI A Posição da segunda grade que esta tampando a entrada do castelo
local item_to_remove_2 = getThingfromPos(wall_2)

local wall_3 = {x=, y=, z=, stackpos=1} --- COLOQUE AQUI A Posição da terçeira grade que esta tampando a entrada do castelo
local item_to_remove_3 = getThingfromPos(wall_3)

local part = Z --- COLOQUE AQUI A ID DA GRADE

-------- SISTEMA --------

if getPlayerAccess(cid) >= 3 then
doPlayerSay(cid,"A guerra das guilds no Castelo "..castelo_name.." acabou de começar. GUILDS, PREPAREM-SE! Valendo: \n"..param.."!",9)
doRemoveItem(item_to_remove_1.uid,part)
doRemoveItem(item_to_remove_2.uid,part)
doRemoveItem(item_to_remove_3.uid,part)
setGlobalStorageValue(63000,0)

end
end

 

Quando for chamar este comando, fale:

 

/begin "nome do item que a guild recebera caso ganhe o castelo


COMO POR EXEMPLO


/begin "demon set

 

OBS: Com este comando, você não coloca para dar o item aos players, apenas avisa qual o premio, o item deve ser criado por você na hora.

 

Agora se você quer fechar o castelo depois que todos da guild vencedora ganharam item e sairam do castelo, e dps de uma guerra, precisa de um comando:

 

Va em data/talkaction/scripts, copie qualquer arquivo, renomeie para rg, delete tudo dentro e coloque isto, lembrando que é preciso editar as cordenadas das grades e a id da grade:

 

function onSay(cid, words, param)

-------- CORDENADAS --------

local wall_1 = {x=, y=, z=, stackpos=1} --- COLOQUE AQUI A Posição da primeira parede que esta tampando a entrada do castelo
local item_to_create_1 = getThingfromPos(wall_1)

local wall_2 = {x=, y=, z=, stackpos=1} --- COLOQUE AQUI A Posição da segunda parede que esta tampando a entrada do castelo
local item_to_create_2 = getThingfromPos(wall_2)

local wall_3 = {x=, y=, z=, stackpos=1} --- COLOQUE AQUI A Posição da terçeira parede que esta tampando a entrada do castelo
local item_to_create_3 = getThingfromPos(wall_3)

local part = Z --- COLOQUE AQUI A ID DA GRADE

-------- SISTEMA --------

if getPlayerAccess(cid) >= 3 then
doCreateItem(part,1,wall_1)
doCreateItem(part,1,wall_2)
doCreateItem(part,1,wall_3)
setGlobalStorageValue(63000,-1)

end
end

 

Para fechar o castelo basta falar /rg

 

Agora, para finalizar, tem que cocar as TAGS

 

Va em movements.xml e adicione isto:

 

<movevent event="StepIn" actionid="10029" script="Castle Invasion.lua" /> 
<movevent event="StepIn" actionid="10030" script="Castle Invasion.lua" />

 

Va em talkactions.xml e adicione isto:

 

<talkaction words="/rg" script="rg.lua" />  
<talkaction words="/begin" script="begin.lua" />

 

Fazendo isto, acaba o sistema, coloque o OT On, e teste a primera war das guilds no castelo, aposto que os players vão adorar

 

Creditos: 90% Xtr3m3

10% Haxy, por a reformulação foi a partir do script dele, apesar de eu não ter copiado dele

 

Se for divulgado use meus creditos

 

COMENTEM

 

 

Cara eu fiz tudo certinho + n ta dando certo n =/ ta dando esse erro aki oh e eh so no begin:

[05/12/2008 08:42:10] Warning: [Event::loadScript] Can not load script. data/talkactions/scripts/begin.lua

[05/12/2008 08:42:10] data/talkactions/scripts/begin.lua:9: '=' expected near 'local'

 

o q eh isso? eu so fiz copiar e colar no bloco de notas tudo q vc falou ai! Na boaaa me ajuda ai fast!

Link para o comentário
Compartilhar em outros sites

data/talkactions/scripts/begin.lua:23: attempt to concatenate local 'castelo_name' (a nil value)

[07/12/2008 12:24:10] stack traceback:

[07/12/2008 12:24:10] data/talkactions/scripts/begin.lua:23: in function <data/talkactions/scripts/begin.lua:1>

 

 

Cara esse problema tambem ta me pertubando! ;/

Eu sei que ta faltando alguma coisa la na variavel do castelo_name mais ja tentei coloka aspas ja tentei de tudo mais nao funfa! ; /

 

tem como ajuda ae nao?

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

@XTR3M3~

 

Parabéns, tópico organizado, com print.

 

@Topic~

 

Simplesmente o que eu procurava pro meu OT. Mas não funcionou!

 

/begin não funciona! Não acontece nada.

 

Mas obrigado mesmo assim, pelo seu esforço.

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...
Desculpem minha ausencia....não podendo responder seus posts...

porem fiquei 2 meses sem internet...mais prometo a partir de hoje estar responde tdo que quiserem sobre meus posts!

 

Cara, sem querer agredir verbalmente mas você é um vacilão! Como é que você faz um topico desse, empolga uma galera diz que vai ajudar e deixa o povo com suas dúvidas? Se for fazer um topico e não tiver como responder as dúvidas dos outros pelo menos explica direito no seu topico...

 

 

O script é até bom mais deixa de fato dúvidas.

 

 

Parabéns. Vê se consegue esclarecer a dúvida do povo ae :]

Link para o comentário
Compartilhar em outros sites


×
×
  • Criar Novo...