Jump to content

Bem vindo a CS2DOT!
Venha fazer parte da nossa comunidade, aqui você poderá interagir com outros players, ficar por dentro de campeonatos, participar de ventos e promoções e além de nos ajudar a elevar a diversão ao topo. Se você já tem uma conta, faça o login aqui - ou então for free today!

Foto

Como criar SCRIPTS



  • Por favor, inicie sesión para responder

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

#1
Fuera de línea
em Qui Fev 05, 2015 2:32 am


avatar

Fundador
Fundador
Esse tutorial foi escrito pelo SagosWins, da antiga CS2D Scripts. Contém alguns erros de português porém estou repostando aqui.

"Eae Pessoal esta pagina foi criada por SagosWins, vou tentar esta ensinando a criar scripts para quem não tem nem uma experiencia nesta linguagem.

ATENÇÃO: Continue Lendo Esta Pagina Somente Se Souber Ligar Scripts Lua Em Seu Servidor!

vou ensinar passo-a-passo como criar um script simples para resetar o score
e mais para frente vou ensinar comandos mais difícil.

quando o script já esta pronto ele começa de cima para baixo e vai lendo linha por linha

abra o bloco de notas ou qualquer editor de texto que você preferir.
quando seu script estiver pronto salve-o com o nome que desejar mas coloque .lua no final para que fique no formato correto para o seu funcionamento.

digitem no bloco de notas

msg("Ola Mundo!")

ative este seu script e vc vera que assim que o jogo iniciar ira mostrar a mensagem Ola Mundo!
isso acontece porque vc n colocou nen um outro comando falando quando essa mensagem iria aparecer
então assim q o jogo inicia o script ja mostra

vc pode colocar a mensagem que quiser dentro das aspas duplas
agora vc ja sabe criar uma mensagem no seu servidor, lembrando que no lugar das aspas duplas vc tbm pode colocar aspas simples e duplo colchetes esses 3: " ' [[ vou dar um ex:

msg([[Ola Mundo!]])
msg('Ola Mundo!')
msg("Ola Mundo!")

não é só no comando msg que pode usar este " ' [[ e sim em todos os comandos que usa
string e variavel vou explicar o que é isso mais para frente
é importante saber que se começar com algum dos 3 tem q terminar com o mesmo.
o meu preferido é aspas duplas então da qui para frente sou vou usar "

agora vou ensinar a criar uma hook, como eu não sei muito bem o que ela faz u.u
vou só falar o que eu sei (eu acho que é isso se não for e vc souber me avise nos comentários)
hook é ativado dependendo de sua função.
e existe uma função para tudo, neste caso como vamos criar com script de reset
tem que ser ativado quando falar !reset, e falar em inglês é say então vamos fazer assim

addhook("say","AKI_VEM_O_NOME_QUE_VOÇE_QUISER")

n é exatamente assim o nome que quiser, não pode começar com números e não pode ter caracteres especial somente o _ e tbm não pode ter espaço então vamos fazer assim:

addhook("say","resetar")
function AKI_VEM_O_NOME_QUE_VC_DEU_PARA_SUA_HOOK(id,txt)

se ali vai o nome da sua hook então:

function resetar(id,txt)

essa parte (id,txt) são tipo itens que podemos manipular
txt é só uma abreviação de texto.

id: é o ID do jogador que digitou alguma coisa
txt: é o texto que a pessoa digitou

um exemplo

o id 3 digitou oi

então:

id = 3
txt = "oi"

oi esta entre aspas pq sempre que se trata de letras, e a linguagem lua define como texto tudo o que esta entre aspas, isso se chama string.
com números não precisa fazer isto, se vc colocar "3" a linguagem lua vai entender que 3 é um texto e não um número, quando não esta entre aspas ele fica do tipo integer, e integer é diferente de string
string pode ter letras e numeros, mas integer só pode ter numeros.

nosso script já esta assim:

addhook("say","resetar")
function resetar(id,txt)

agora vamos criar mais uma linha:

if txt == "!reset" then

traduzindo esta linha fica:

se o texto for !reset então

agora os próximos comandos vai ser lidos somente se o txt for !reset
se o txt for alguma outra coisa os comandos não vão ser lidos.

não sei se vcs estão entendendo mas vou continuar, qualquer dúvida pergunte nos comentários.

agora vamos criar outra linha e esta linha vai ser um comando do console
e sempre quando usamos comandos do console vamos fazer assim:

parse("AKI_VEM_O_COMANDO_DO_CONSOLE")

se nós queremos resetar o score então o comando no console ficaria assim:

setscore 1 0
setdeaths 1 0

como vcs sabem 1 é o id do jogador e 0 é o score do jogador e na linha d baixo 0 são as mortes.

mas se nós fazer assim:

parse("setscore 1 0")
parse("setdeaths 1 0")

vai dar certo mas só vai resetar o id 1 um ex:

se o id 1 digitar !reset, ta o score dele resetou mas se o id 2 digitar reset o score do id 1 que vai resetar pq ali esta setscore 1 0, e ai vai a pergunta como vms fazer para resetar o score de qm digitar?

simples ao invés de colocarmos 1 colocamos "..id.."
lembra que o id é o numero de qm digitou? ^^

então nosso script esta quase pronto ele ja esta assim:

addhook("say","resetar")
function resetar(id,txt)
if txt == "!reset" then

parse("setscore "..id.." 0")
parse("setdeaths "..id.." 0")
end
end

para finalizar só colocar estes dois end, ai vcs me perguntam pq 2 end?
pq sempre que escrevermos if, function, for e while temos que colocar 1 end quando terminar o comando
ali tem 1 function e 1 if então precisamos de 2 end.
"


_________________

Andrewss "RyeiKun" Ishikawa
38235

          [Você precisa estar registrado e conectado para ver este link.]
Ver perfil do usuário http://www.cs2dot.com.br

Mensagem [Página 1 de 1]