- Binutils.GetLocBool(<addr>)
- Binutils.GetLocInt(<addr>)
- Binutils.GetLocFloat(<addr>)
- Binutils.SetLocBool(<addr>, <bool value>)
- Binutils.SetLocInt(<addr>, <integer value>)
- Binutils.SetLocFloat(<addr>, <float value>)
Syntax: Select all
from Source import Binutils
from events import Event
from players.helpers import pointer_from_userid
offsets = {
'kills': {'offset': 3760, 'value': 10},
'assists': {'offset': 3764, 'value': 3},
'deaths': {'offset': 3768, 'value': 5},
}
@Event
def player_say(GameEvent):
userid = GameEvent.GetInt('userid')
pointer = pointer_from_userid(userid)
text = GameEvent.GetString('text')
if text == 'get':
for offset in offsets:
print('=====================================')
print(pointer)
print(offset)
value = Binutils.GetLocInt(pointer + offsets[offset]['offset'])
print(value)
print('=====================================')
elif text == 'set':
for offset in offsets:
Binutils.SetLocInt(
pointer + offsets[offset]['offset'], offsets[offset]['value'])
* Edit: Another update!! Just added basic offset functionality to BaseEntity classes. The above script can now look like:
Syntax: Select all
from events import Event
from players.entity import PlayerEntity
from players.helpers import index_from_userid
offsets = {
'kills': 10,
'assists': 3,
'deaths': 5,
}
@Event
def player_say(GameEvent):
userid = GameEvent.GetInt('userid')
index = index_from_userid(userid)
player = PlayerEntity(index)
text = GameEvent.GetString('text')
if text == 'get':
for offset in offsets:
print('=====================================')
print(player.__getattr__(offset))
print('=====================================')
elif text == 'set':
for offset in offsets:
player.__setattr__(offset, offsets[offset])
Satoon