Forum

> > CS2D > Scripts > Lua Scripte schreiben hilfe !
Forums overviewCS2D overview Scripts overviewLog in to reply

German Lua Scripte schreiben hilfe !

5 replies
To the start Previous 1 Next To the start

old Lua Scripte schreiben hilfe !

twoja
User Off Offline

Quote
kann mir vllt jemand sagen wie man lua scripte für CS2D schreibt ?
Habe schon alles versucht schon Hunderte von tutorials versucht aber ich verstehe es immer noch nicht
könnte vllt jemand einen kleinen script text einfügen und dazu aufschreiben was was macht und was es bedeutet und wieso es ausgerechnet z.B in klammern sein muss usw.
danke im vorraus

am schönsten würde ich es finden wenn jemand etwas zeit für mich hätte und ich es mit jemanden zusammen im skype versuchen könnte , und ihn dann auch fragen könnte was wie ist usw ...

old Re: Lua Scripte schreiben hilfe !

TimeQuesT
User Off Offline

Quote
Ein kleines Vorwort:

In diesem Text/Tutorial sind vielleicht/bzw 100%ig Rechtschreibefehler/Grammatikfehler usw. drin.
Begriffe/Wörter die du nicht verstehst, guck bitte auf Wikipedia nach oder Frage hier.
Das Tutorial/text (;)) habe ICH geschrieben.. und kein anderer!
Und jetzt lern!

1
addhook ("say","deinefunktion")
das hier ruft die "addhook" funktion mit dem Parametern "say" und "deinfunktion" auf. Das sagt cs2d, dass es immer wenn jemand etwas sagt, die Funktion die als zweiter Parameter gereicht wurde (in diesem Fall "deinefunktion") aufgerufen werden soll.

jetzt deklarieren wir die Funktion "deinefunktion"

1
function deinefunktion(id,text)

das Schlüsselwort "function" sagt, dass jetzt eine Funktion deklariert wird!
zu den Klammern:
Jede funktion kann eigene Parameter haben, die werden der Funktion mitgegeben, so wie deine Mutter dir ein Schulbrot mitgibt. Diese Parameter sind Variablen von unterschiedlichen Typen.
Das Komma (",") trennt die Variablen, es sagt, dass jetzt eine neue Variable folgt.

-> weiter im Text:
da wir vorher cs2d gesagt haben, dass es immer wenn jemand was sagt die Funktion "deinefunktion" aufrufen soll, tut es das auch und gibt der Funktion 2 Brote mit.
Eins ist mit Salami und das andere mit Käse. Das Salamibrot beinhaltet die ID des Spielers der etwas gesagt hat.

function deinefunktion(id,text)

wir können diese Brote auch unbenenen z.B. in
function deinefunktion(spieler,text)
, aber das Wort "spieler" ist länger als das Wort "id" also bleiben wir bei "id".
Das Käsebrot (also "text") beinhaltet den geschriebenen Text. z.B. Wenn Spieler 1 "hallo Welt" schreibt, dann beinhaltet die Variable "id" den Wert "1" und die Variable "text" den Wert "hallo welt".

Jetzt sollte dein Script so aussehen:
1
2
addhook ("say","deinefunktion")
function deinefunktion(id,text)

Es wird aber noch nichts geschehen(bis auf einen Fehler in der Konsole).
Jetzt überprüfen wir die Id des Spielers der geschrieben hat. Dazu rufen wir "if" auf.
1
if (id==1) then
das Schlüsselwort "if" überprüft jetzt die Variable "id". ist der Wert von "id" "1" , dann wird das ausgeführt, was nach dem "then" kommt. If gibt immer einen "boolean" Wert zurück.(einen Wahrheitswert) der kann nur 2 Formen haben: "true" oder "false". wird "true" zurückgegeben, wird das ausgeführt, was nach dem "then" kommt, bis zur einer bestimmten Stelle wo wir sagen "stop Aufhören ! nur is hier!". Das wird mit dem Schlüsselwort "end" gemacht. So beenden wir übrigens auch die Funktion "deine Funktion".

Jetzt müsste das so aussehn:
1
2
3
4
5
6
addhook ("say","deinefunktion")
function deinefunktion(id,text)
if (id==1) then

end --Bis hier soll der Code ausgeführt werden, wenn if true ist!
end  --Hey! hier hört die Funktion auf mache nur bis hier!

das "--" leitet einen Kommentar ein. Alls was hinter "--" steht, wird nicht ausgeführt!

Weiter:
so bis jetzt sollte das script jedoch nix tun, da wir nichts machen, das irgendetwas sichtbares tut.
Also rufen wir jetzt die von cs2d vordefinierte Funktion "msg" auf. du musst der Funktion "msg" aber auch Brote mit geben. also geben geben wir ihr das Brot "Spieler 1 hat geschrieben" mit!
1
msg("Spieler 1 hat geschrieben")

so sollte jetzt das Script aussehen:

1
2
3
4
5
6
addhook ("say","deinefunktion")
function deinefunktion(id,text)
if (id==1) then
msg ("Spieler 1 hat geschrieben")
end
end
Das Programm gibt jetzt immer wenn der Spieler mit der id "1" etwas geschrieben hat den Text "Spieler 1 hat geschrieben" auf dem Bildschirm aus.
tada dein erstes programm, was auf "events" reagiert.

edit:
Über Fehler bzw. falsch Informationen, lasse ich mich gerne Aufklären
und wenn jemand Lust hätte alle Fehler wie z.B. Rechtschreibfehler zu entfernen währe das echt nett

old Re: Lua Scripte schreiben hilfe !

twoja
User Off Offline

Quote
OMG dachte nicht das das so schnell gecht danke jungs


könnte mir vllt einer von euch noch sagen was der satz in einem script zu bedeuten hat ?

addhook("say","player_speed")
function player_speed(id,txt)
if(txt=="!speed") then
parse("speedmod "..id.." 10")
end
end
edited 3×, last 24.04.11 07:46:16 pm

old Re: Lua Scripte schreiben hilfe !

TimeQuesT
User Off Offline

Quote
"speedmod " ist ein serverseitiger Befehl. "Parse" ist eine Funktion die folgenden "text" als "Konsolenenbefehl" simuliert

".." sind kopplungszeichen sowie bei c++ "<<"

ausgeschrieben würde da stehen "speedmod x 10"
für x wird die variable id eingesetzt
To the start Previous 1 Next To the start
Log in to reply Scripts overviewCS2D overviewForums overview