Custom event conflicts with events prehook
Posted: Wed Aug 27, 2014 6:33 pm
Server crashes when a custom event is being fired and a PreHook for events is active. How to fix it?
Syntax: Select all
from core import PLATFORM
from events import Event
from events import GameEvent
from events.custom import CustomEvent
from events.manager import GameEventManager
from events.resource import ResourceFile
from events.variable import ShortVariable
from memory import Convention, Argument, Return
from memory import get_object_pointer
from memory import make_object
from memory.hooks import PreHook
class Test_Event(CustomEvent):
userid = ShortVariable()
res = ResourceFile('test_events_file', Test_Event)
res.write()
res.load_events()
PRE_EVENT_FUNC = get_object_pointer(GameEventManager).make_virtual_function(
7 if PLATFORM == 'windows' else 8,
Convention.THISCALL,
(Argument.POINTER, Argument.POINTER, Argument.BOOL),
Return.VOID
)
@PreHook(PRE_EVENT_FUNC)
def pre_events(arguments):
print('pre_events')
game_event = make_object(GameEvent, arguments[1])
print(game_event.get_name())
@Event
def test_event(event):
print('Test_Event')
@Event
def player_spawn(event):
print('spawn')
Test_Event(userid=event.get_int('userid')).fire()