Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: sourceserver.info. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Samstag, 7. März 2009, 20:27

Variablen in ESP

Hallo,

habe mal ne frage. Wie kann ich mit Variablen in ESP arbeiten?

Möchte sie sozusagen erstellen wie im normalen ES mit es_set, sie im Script ändern, und wenn es geht auch rechnen.

Mal als beispiel die alte Form:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
block load 
{ 
        es_xset variable 0 
} 

event round_start 
{ 
        variable 1 
}

event player_spawn
{
        if (event_var(es_userteam) == 2) then es_math variable + 1 
}

Gibt es den befehl es_math auch in ESP. Im Wiki habe ich den nicht gefunden.

Danke

Chrisber

Administrator

Beiträge: 1 030

Wohnort: localhost

Rootserver vorhanden: Ja

  • Nachricht senden

2

Samstag, 7. März 2009, 22:20

Re: Variablen in ESP

Hi.
Hier ist das Python äquivalent zu deinem Code:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import es

def load():
    global variable
    variable = 0

def round_start(event_var):
    global variable
    variable = 1

def player_spawn(event_var):
    global variable
    
    if event_var["es_userteam"] == "2":
        variable += 1


Du kannst dir hier noch mal ein paar Grundlagen anschauen: http://www.sourceserver.info/viewtopic.php?f=43&t=1106">viewtopic.php?f=43&t=1106<

~ Chris
Und das letzte, was gesagt wird, wenn die Welt untergeht, ist: das ist technisch unmöglich.

3

Samstag, 7. März 2009, 22:34

Re: Variablen in ESP

Danke dir erstmal...

Habe deine Anleitung schon durch. Super gemacht. Und mit dem Beispiel hier komm ich auch weiter.

Doch ein paar Fragen habe ich noch.

Für was ist eigentlich die "def load()" - Funktion?

Wie kann man den Ausdruck "variable += 1" verstehen? --> mir ist klar das Phyton wahrscheinlich mit dem "+" den Wert zur Variable addiert. Aber warum das"="?

Grüße

Chrisber

Administrator

Beiträge: 1 030

Wohnort: localhost

Rootserver vorhanden: Ja

  • Nachricht senden

4

Samstag, 7. März 2009, 22:42

Re: Variablen in ESP

Hi.
Die load()-Funktion wird immer dann ausgeführt, wenn du das Script mit es_load startest. unload() eben bei es_unload.

Vielleicht verstehst du das so besser:

Quellcode

1
variable += 1
ist das gleiche wie

Quellcode

1
variable = variable + 1


Bei ESP und ESS gibt es den Unterschied, dass EventScripts Intern alles in den Variablen gespeichert hat. D.h. das ausgerechnete mit es_math schreibt EventScripts direkt in die Variable, bei Python musst du der Variable den Wert eben neu zuweisen, damit dieser in ihr gespeichert wird.

~ Chris
Und das letzte, was gesagt wird, wenn die Welt untergeht, ist: das ist technisch unmöglich.

5

Samstag, 7. März 2009, 22:45

Re: Variablen in ESP

Perfekt... So stell ich mir Hilfe vor.

Habe noch was vergessen. du schreibst in deinem Code:

Quellcode

1
if event_var["es_userteam"] == "2":


Warum geht die 2 nicht ohne den "".
Ist das Userteam nicht als Ganzzahl hinterlegt?

Chrisber

Administrator

Beiträge: 1 030

Wohnort: localhost

Rootserver vorhanden: Ja

  • Nachricht senden

6

Samstag, 7. März 2009, 22:52

Re: Variablen in ESP

Hi.
Nein, das habe ich im Tutorial wohl vergessen zu erwähnen: ALLE event_var's sind IMMER vom Typ string. Eine Konvertierung schafft Abhilfe, falls es dir lieber ist:

Quellcode

1
if int(event_var["es_userteam"]) == 2:


~ Chris
Und das letzte, was gesagt wird, wenn die Welt untergeht, ist: das ist technisch unmöglich.