Отличная новость от Helios2000 с немецкого форума falloutnow.
Вот тема http://www.falloutnow.de/fn/index.php?topic=4031.0
Он добавил в sfall функции:
write_int(Offset, Value) - позволяет писать в (движок?) смысл в том что через скрипты можно изменить офсет в движке.
call_offset(Offset) - Вызвать офсет?
Практическое назначение. Можно намного расширить круг скриптования.
Вот набор, в нем лежит компилятор, ddraw.dll и extra.h
http://www.file-upload.net/download-1395976/Pack.rar.html
Вот несколько строк из extra.h
Code:
#define get_mouse_pos_x read_int(6997908) //Mouse X Position
#define get_mouse_pos_y read_int(6997916) //Mouse Y Position
#define get_mouse_pressed read_int(5366444) //Mouse Press: 0=No, 1=Left Button, 2=Right Button, 3=Left+Right
#define get_mouse_on_iface ((read_int(5366788))/2) //Mouse on Iface: 0=no, 1=yes
#define get_mouse_region read_short(6997909) //Mouse on region: 0=left, 1=middle, 2=right
#define get_number_gvar read_int(5342916) //Count of global variables
#define get_number_city read_int(5365244) //Count the city's
#define dude_car_ride (read_int(6762084) == 1) //Dude drive car
#define dude_active_hand read_int(5345144) //0=Left Hand, 1=Right Hand
#define combat_is_active (read_int(5310788) == 3) //Combat is activ
#define combat_round read_int(5310784) //Count the combat round's
#define get_game_difficulty read_int(6699452) //0=Easy, 1=Middle, 2=Hard
#define get_aim1 ((read_int(5861640))/2) //1.Weapon Slot 0=not aim, 1=aim
#define get_aim2 ((read_int(5861664))/2) //2.Weapon Slot 0=not aim, 1=aim
#define actmenu_button ((read_int(5344532)+1) //Count the Action Menь Buttons
#define select_actmenu_button read_int(5344540) //Which Button is selected
#define actmenu_frm1 read_int(5860412) //Return a Number between 0-9 (0=cancel, 1=drop, 2=inventory, 3=look,...
#define actmenu_frm2 read_int(5860416) //4=rotate, 5=talk, 6=use, 7=unload, 8=skill, 9=push
#define get_mouse_pos_y read_int(6997916) //Mouse Y Position
#define get_mouse_pressed read_int(5366444) //Mouse Press: 0=No, 1=Left Button, 2=Right Button, 3=Left+Right
#define get_mouse_on_iface ((read_int(5366788))/2) //Mouse on Iface: 0=no, 1=yes
#define get_mouse_region read_short(6997909) //Mouse on region: 0=left, 1=middle, 2=right
#define get_number_gvar read_int(5342916) //Count of global variables
#define get_number_city read_int(5365244) //Count the city's
#define dude_car_ride (read_int(6762084) == 1) //Dude drive car
#define dude_active_hand read_int(5345144) //0=Left Hand, 1=Right Hand
#define combat_is_active (read_int(5310788) == 3) //Combat is activ
#define combat_round read_int(5310784) //Count the combat round's
#define get_game_difficulty read_int(6699452) //0=Easy, 1=Middle, 2=Hard
#define get_aim1 ((read_int(5861640))/2) //1.Weapon Slot 0=not aim, 1=aim
#define get_aim2 ((read_int(5861664))/2) //2.Weapon Slot 0=not aim, 1=aim
#define actmenu_button ((read_int(5344532)+1) //Count the Action Menь Buttons
#define select_actmenu_button read_int(5344540) //Which Button is selected
#define actmenu_frm1 read_int(5860412) //Return a Number between 0-9 (0=cancel, 1=drop, 2=inventory, 3=look,...
#define actmenu_frm2 read_int(5860416) //4=rotate, 5=talk, 6=use, 7=unload, 8=skill, 9=push
Думаю лишнем не будет.