Merkmale von ESP
Die unten beschriebenen Merkmale sollte man besten auswendig lernen (das Wissen der verschiedenen ES-Funktionen ist Vorassetzung dafür):
- es.dbgmsg anstatt print:
- es.dbgmsg gibt die Debug-Meldung an die Server-Console aus, print an den Python-Interpreter (in dem Fall auch an die Server-Console, man sollte aber dennoch lieber es.dbgmsg nutzen) - Syntax von es.dbgmsg:
es.dbgmsg(0, 'Meldung hier')
- es.dbgmsg gibt die Debug-Meldung an die Server-Console aus, print an den Python-Interpreter (in dem Fall auch an die Server-Console, man sollte aber dennoch lieber es.dbgmsg nutzen) - Syntax von es.dbgmsg:
- es.getplayerprop/es.setplayerprop anstatt playerlib:
- Sobald ihr über etwas stolpert, was ihr nach eurem jetzigen Wissen nur mit playerlib schafft, versucht es erst mit es.setplayerprop/es.getplayerprop:
-
health = es.getplayerprop(userid, 'CBasePlayer.m_iHealth') # anstatt: health = playerlib.getPlayer(userid).get('health') # oder: es.setplayerprop(userid, 'CBasePlayer.m_iHealth', 100) # anstatt: playerlib.getPlayer(userid).set('health', 100)
es.getplayerprop/es.setplayerprop sind direkter und schneller als die playerlib-Methode, die playerlib-Methode ist dagegen einfacher gestaltet, mehr nicht (sie macht das Gleiche mit es.setplayerprop).#
-
- Sobald ihr über etwas stolpert, was ihr nach eurem jetzigen Wissen nur mit playerlib schafft, versucht es erst mit es.setplayerprop/es.getplayerprop:
- Da wir schon bei es.setplayerprop/es.getplayerprop sind:
- es.getplayerprop gibt IMMER einen Integer zurück (Ganzzahl). Da in Python ein Integer von 0 auch als False, und ein Integer von 1 aufwärts bzw. -1 abwärts als True zählt, braucht man hier in manchen fällen kein == (equals to), einfach mit if bzw if not / else:
# True (Health Points): if es.getplayerprop(userid, 'CBasePlayer.m_iHealth'): es.msg('Health: More or Less than 0!') # False (Health Points): else: es.msg('Health: == 0!') # Anmerkung: Ob der Spieler tot ist, wird NICHT mit den Health-Points überprüft: if es.getplayerprop(userid, 'CBasePlayer.pl.deadflag'): es.msg("He's dead!") else: es.msg("He's alive!")
- es.getplayerprop gibt IMMER einen Integer zurück (Ganzzahl). Da in Python ein Integer von 0 auch als False, und ein Integer von 1 aufwärts bzw. -1 abwärts als True zählt, braucht man hier in manchen fällen kein == (equals to), einfach mit if bzw if not / else:
Das wär's erstmal =)
KategorienEventScripts Python

Letzte Kommentare