********
PT: ATENÇÃO!!! Sanny Builder implementou oficialmente a partir da v3.6.0, ou seja,
você só precisa fazer isto se você, por algum motivo, ainda quer usar a versão
antiga do SB.
EN: ATTENTION!!! Sanny Builder officially implemented from v3.6.0, that is, you
only need to do this if you, for some reason, still want to use the old SB version.
********
PT: Abra o "data/sa/opcodes.txt" localizado na pasta do Sanny Builder, e adicione:
EN: Open the "data/sa/opcodes.txt" located in the Sanny Builder folder, and add it:
0EA0: set_actor_second_player 1@ enable_camera 2@ separate_cars 3@
0EA1: disable_second_player_restore_camera 1@
0EA2: fix_two_players_separated_cars 1@
0B20: read_clipboard_data_to 1@ size 2@
0B21: write_clipboard_data_from 1@ size 2@
0E01: create_object_no_save 1@ at 2@ 3@ 4@ offset 5@ ground 6@ to 7@
0E02: set_car_generator_no_save 1@
0D59: get_current_weather_to 1@
0E04: get_next_weather_to 1@
0E05: set_next_weather_to 1@
0E06: get_rain_intensity 1@
0E07: set_rain_intensity 1@
0E40: get_current_hour 1@
0E41: get_current_minute 1@
0E6C: get_day_night_balance 1@
0E6D: get_underwaterness 1@
0EB0: get_forced_weather 1@
0E08: is_car_script_controlled 1@
0E09: mark_car_as_needed 1@
0E0A: is_char_script_controlled 1@
0E0B: mark_char_as_needed 1@
0E0C: is_object_script_controlled 1@
0E0D: mark_object_as_needed 1@
0E0E: get_current_resolution_to 1@ 2@
0E0F: get_fixed_xy_aspect_ratio 1@ 2@ to 3@ 4@
0E3F: convert_3d_to_screen_2d 1@ 2@ 3@ checkNearClip 4@ checkFarClip 5@ store_2d_to
6@ 7@ size_to 8@ 9@
0EB8: is_radar_visible
0EB9: is_hud_visible
0EC7: get_fade_alpha 1@
0E10: is_mouse_wheel_up
0E11: is_mouse_wheel_down
0E23: get_mouse_sensibility_to 1@
0E3D: is_key_just_pressed 1@
0E3E: is_button_just_pressed 1@ button 2@
0E60: set_camera_control 1@
0E67: is_aim_button_pressed 1@
0E68: set_player_control_pad 1@ 2@
0E69: set_player_control_pad_movement 1@ 2@
0E8D: is_any_fire_button_pressed 1@
0E6E: is_select_menu_just_pressed
0F13: get_time_not_touching_pad 1@ store_to 2@
0ED0: return_script_event
0ED1: set_script_event_save_confirmation 1@ label @label var_slot 3@
0ED2: set_script_event_char_delete 1@ label @label var_char 3@
0ED3: set_script_event_char_create 1@ label @label var_char 3@
0ED4: set_script_event_car_delete 1@ label @label var_car 3@
0ED5: set_script_event_car_create 1@ label @label var_car 3@
0ED6: set_script_event_object_delete 1@ label @label var_object 3@
0ED7: set_script_event_object_create 1@ label @label var_object 3@
0ED8: set_script_event_on_menu 1@ label @label var_just_paused 3@
0EDA: set_script_event_char_process 1@ label @label var_char 3@
0EDB: set_script_event_car_process 1@ label @label var_car 3@
0EDC: set_script_event_object_process 1@ label @label var_object 3@
0EDD: set_script_event_building_process 1@ label @label var_building 3@
0EDE: set_script_event_char_damage 1@ label @label var_char 3@
0EDF: set_script_event_car_weapon_damage 1@ label @label var_car 3@
0EE0: set_script_event_bullet_impact 1@ label @label var_owner 3@ var_victim 4@
var_weapon 5@ var_colpoint 6@
0F0B: set_script_event_before_game_process 1@ label @label
0F0C: set_script_event_after_game_process 1@ label @label
0E12: get_vehicle 1@ subclass_to 2@
0E13: get_entity 1@ type_to 2@
0E14: init_extended_char_vars 1@ id 2@ new_vars 3@
0E15: set_extended_char_var 1@ id 2@ var 3@ value 4@
0E16: get_extended_char_var 1@ id 2@ var 3@ to 4@
0E17: init_extended_car_vars 1@ id 2@ new_vars 3@
0E18: set_extended_car_var 1@ id 2@ var 3@ value 4@
0E19: get_extended_car_var 1@ id 2@ var 3@ to 4@
0E1A: init_extended_object_vars 1@ id 2@ new_vars 3@
0E1B: set_extended_object_var 1@ id 2@ var 3@ value 4@
0E1C: get_extended_object_var 1@ id 2@ var 3@ to 4@
0E1D: is_on_mission
0E20: is_on_samp
0E25: is_on_cutscene
0E24: fix_char 1@ ground 2@ brightness 3@ and_fade_in 4@
0E26: is_weapon 1@ fire_type 2@
0E2C: get_current_save_slot 1@
0E2D: is_game_first_start
0E32: set_char_coordinates_simple 1@ coord 2@ 3@ 4@
0E45: frame_mod 1@
0E4D: random_percent 1@
0E59: get_trailer_from_car 1@ trailer 2@
0E5A: get_car_from_trailer 1@ store_to 2@
0E5B: get_car_dummy_coord 1@ dummy 2@ world_coords 3@ invert_x 4@ store_to 5@ 6@ 7@
0E5D: is_cheat_active 1@
0E5E: change_player_money 1@ mode 2@ value 3@
0E5F: car_horn 1@
0D4C: 2@ = string 1@v length
0D4D: copy_string 1@v to 2@
0E00: get_car_alarm 1@ mode_to 2@
0E61: set_car_alarm 1@ mode 2@
0D39: 2@ = get_char_max_health 1@
0E5C: get_player_health_percent 1@ store_to 2@
0E64: get_camera_mode 1@
0E65: get_car_collision_intensity 1@ store_to 2@
0E66: get_car_collision_coordinates 1@ store_to 2@ 3@ 4@
0E6F: stream_custom_script_from_label @label
0E70: get_last_created_custom_script 1@
0E71: get_object_centre_of_mass_to_base_of_model 1@ 2@
0E7F: get_model_type 1@ store_to 2@
0E80: is_string_equal 1@v 2@v max_size 3@ case_sensitive 4@ ignore_charactere 5@v
0E81: is_string_comment 1@v
0E82: does_car_have_part_node 1@ 2@
0E83: get_current_char_weaponinfo 1@ store_to 2@
0E84: get_weaponinfo 1@ skill 2@ store_to 3@
0E85: get_weaponinfo_models 1@ store_to 2@ 3@
0E86: get_weaponinfo_flags 1@ store_to 2@
0E87: get_weaponinfo_animgroup 1@ store_to 2@
0E88: get_weaponinfo_total_clip 1@ store_to 2@
0E89: get_weaponinfo_fire_type 1@ store_to 2@
0E8A: get_weaponinfo_slot 1@ store_to 2@
0E8B: get_char_weapon_state 1@ store_to 2@
0E8C: get_char_weapon_clip 1@ store_to 2@
0E8E: get_char_collision_surface 1@ store_to 2@
0E8F: get_char_collision_lighting 1@ store_to 2@
0E90: get_car_collision_surface 1@ store_to 2@
0E91: get_car_collision_lighting 1@ store_to 2@
0E92: is_char_really_in_air 1@
0E93: is_car_really_in_air 1@
0E94: is_object_really_in_air 1@
0E95: simulate_object_damage 1@ damage 2@ type 3@
0E98: request_priority_model 1@
0E99: load_all_priority_models_now
0E9A: load_special_character_for_id 1@ name 2@
0E9B: unload_special_character_from_id 1@
0E9C: get_model_by_name 1@ store_id 2@
0E9D: is_model_available_by_name 1@
0E9E: get_model_doesnt_exist_in_range 1@ to 2@ store_to 3@
0E9F: remove_all_unused_models
0EA3: remove_model_if_unused 1@
0EA4: is_char_on_fire 1@
0EA5: get_closest_cop_near_char 1@ radius 2@ alive 3@ in_car 4@ on_foot 5@
seen_in_front 6@ store_to 7@
0EA6: get_closest_cop_near_char 1@ 2@ 3@ radius 4@ alive 5@ in_car 6@ on_foot 7@
store_to 8@
0EA7: get_any_char_no_save_recursive 1@ progress_to 2@ char_to 3@
0EA8: get_any_car_no_save_recursive 1@ progress_to 2@ car_to 3@
0EA9: get_any_object_no_save_recursive 1@ progress_to 2@ object_to 3@
0EAA: set_char_arrested 1@
0EAB: get_char_pedstate 1@ store_to 2@
0EAC: get_char_proofs 1@ bullet 2@ fire 3@ explosion 4@ collision 5@ melee 6@
0EAD: get_car_proofs 1@ bullet 2@ fire 3@ explosion 4@ collision 5@ melee 6@
0EAE: get_object_proofs 1@ bullet 2@ fire 3@ explosion 4@ collision 5@ melee 6@
0EAF: is_char_weapon_visible_set 1@
0EB1: get_char_stat_id 1@ store_to 2@
0EB2: get_offset_from_camera_in_world_coords 1@ 2@ 3@ store_to 4@ 5@ 6@
0D0A: store_coords_to 5@ 6@ 7@ from_matrix 1@ with_offsets 2@ 3@ 4@
0EB4: set_car_coordinates_simple 1@ position 2@ 3@ 4@
0EB5: get_char_damage_last_frame 1@ damager 2@ type 3@ part 4@ intensity 5@
0EB6: get_car_weapon_damage_last_frame 1@ char 2@ type 3@ intensity 4@
0EB7: is_on_scripted_cutscene
0EBA: get_model_ped_type_and_stat 1@ store_to 2@ 3@
0EBB: pass_time 1@
0EBC: generate_random_int_in_range_with_seed 1@ min 2@ max 3@ store_to 4@
0EBD: generate_random_float_in_range_with_seed 1@ min 2@ max 3@ store_to 4@
0EBE: locate_camera_distance_to_coordinates 1@ 2@ 3@ radius 4@
0EBF: get_fx_system_pointer 1@ store_to 2@
0EC0: add_fx_system_particle 1@ coord 2@ 3@ 4@ vel 5@ 6@ 7@ size 8@ brightness 9@
rgba 10@ 11@ 12@ 13@ lastFactor 14@
0EC1: is_fx_system_available_with_name 1@v
0EC2: set_string_upper 1@v
0EC3: set_string_lower 1@v
0EC4: string_find 1@ 2@v 3@v store_to 4@
0EC5: cut_string_at 1@ 2@
0EC6: is_string_character_at 1@v character 2@v index 3@
0EC8: get_char_random_seed 1@ store_to 2@
0EC9: get_car_random_seed 1@ store_to 2@
0ECA: get_object_random_seed 1@ store_to 2@
0ECB: get_char_move_state 1@ store_to 2@
0ECC: dont_delete_char_until_time 1@ 2@
0ECD: dont_delete_car_until_time 1@ 2@
0ECE: get_time_char_is_dead 1@ store_to 2@
0ECF: get_time_car_is_dead 1@ store_to 2@
0ED9: set_char_ignore_damage_anims 1@ 2@
0EE4: locate_char_distance_to_char 1@ char 2@ radius 3@
0EE5: locate_char_distance_to_car 1@ car 2@ radius 3@
0EE6: locate_char_distance_to_object 1@ object 2@ radius 3@
0EE7: locate_car_distance_to_object 1@ object 2@ radius 3@
0EE8: locate_car_distance_to_car 1@ car 2@ radius 3@
0EE9: locate_object_distance_to_object 1@ object 2@ radius 3@
0EEA: locate_char_distance_to_coordinates 1@ pos 2@ 3@ 4@ radius 5@
0EEB: locate_car_distance_to_coordinates 1@ pos 2@ 3@ 4@ radius 5@
0EEC: locate_object_distance_to_coordinates 1@ pos 2@ 3@ 4@ radius 5@
0EED: locate_entity_distance_to_entity 1@ 2@ radius 5@
0EEE: get_entity_coordinates 1@ store_to 2@ 3@ 4@
0EEF: get_entity_heading 1@ store_to 2@
0EF5: is_car_owned_by_player 1@
0EF6: set_car_owned_by_player 1@ 2@
0EF8: get_model_info 1@ store_to 2@
0EF9: get_car_animgroup 1@ store_to 2@
0EFA: get_char_fear 1@ store_to 2@
0EFB: is_car_convertible 1@
0EFC: get_car_value 1@ store_to 2@
0EFD: get_car_pedals 1@ gas_to 2@ break_to 3@
0EFE: get_loaded_library 1@ store_to 2@
0F0A: return_times 1@
0F0E: get_third_person_camera_target 1@ from 2@ 3@ 4@ start_to 5@ 6@ 7@ end_to 8@
9@ 10@
0F0F: get_distance_multiplier 1@ 2@
0F10: get_active_camera_rotation 1@ 2@ 3@
0F11: get_closest_water_distance 1@ 2@
0F12: get_camera_struct 1@ 2@
0F14: get_camera_rotation_input_values 1@ 2@
0F15: set_camera_rotation_input_values 1@ 2@
0F16: set_on_mission 1@
0F17: get_model_name_pointer 1@ to 2@v
0D0F: set_car_model_alpha 1@ alpha 2@
0D10: set_char_model_alpha 1@ alpha 2@
0D11: set_object_model_alpha 1@ alpha 2@
0D2D: get_local_time_year_to 1@ month_to 2@ day_of_week_to 3@ day_to 4@ hour_to 5@
minute_to 6@ second_to 7@ milliseconds_to 8@
0D2E: set_script 1@ var 2@ value 3@
0D2F: 3@ = get_script 1@ var 2@
0D33: set_car 1@ door 2@ window_state 3@
0E1E: draw_texture_plus 1@ event 2@ pos 3@ 4@ size 5@ 6@ angle 7@ depth 8@
fix_aspect_ratio 9@ maskTrisCount 10@ maskTrisArray 11@ rgba 12@ 13@ 14@ 15@
0E3C: get_texture_from_sprite 1@ store_to 2@
0E62: print 1@v event 2@ at 3@ 4@ scale 5@ 6@ fixAR 7@ style 8@
0E63: print 1@v event 2@ at 3@ 4@ scale 5@ 6@ fixAR 7@ style 8@ prop 9@ align 10@
wrap 11@ justify 12@ color 13@ 14@ 15@ 16@ outline 17@ shadow 18@ dropColor 19@ 20@
21@ 22@ background 23@ backColor 24@ 25@ 26@ 27@
0D1E: quat_slerp 1@ to 2@ lambda 3@ result 4@
0D16: set_matrix_rotation_from_quat 1@ rotation_from_quat 2@
0D17: set_quat_from_matrix 1@ to_quat 2@
0D18: rotate_quat_on_axis 1@ axis_vector 2@ 3@ 4@ angle 5@ combine_op 6@
0D19: get_normalised_quat 1@ to_quat 2@
0D1A: multiply_quats 3@ = quat 1@ * quat 2@
0D24: set_quat 1@ elements 2@ 3@ 4@ 5@
0D29: get_quat 1@ elements_to 2@ 3@ 4@ 5@
0D01: rotate_matrix 1@ on_axis 2@ 3@ 4@ angle 5@ combine_op 6@
0D02: 2@ = matrix 1@ x_angle
0D03: 2@ = matrix 1@ y_angle
0D04: 2@ = matrix 1@ z_angle
0E1F: ease 1@ mode 2@ way 3@ to 4@
0E27: get_angle_from_two_coords 1@ 2@ and 3@ 4@ to 5@
0E03: perlin_noise 1@ store_to 2@
0E29: perlin_noise 1@ octaves 2@ frequency 3@ amplitude 4@ lacunarity 5@
persistence 6@ store_to 7@
0EF0: get_coord_from_angled_distance 1@ 2@ angle 3@ dist 4@ store_to 5@ 6@
0EF1: perlin_noise_fractal_2d x 1@ y 2@ octaves 3@ frequency 4@ amplitude 5@
lacunarity 6@ persistence 7@ store_to 8@
0EF2: perlin_noise_fractal_3d x 1@ y 2@ z 3@ octaves 4@ frequency 5@ amplitude 6@
lacunarity 7@ persistence 8@ store_to 9@
0EF4: clamp_float 1@ min 2@ max 3@ store_to 4@
0EF7: clamp_int 1@ min 2@ max 3@ store_to 4@
0EB3: convert_direction_to_quat 1@ dir 2@ 3@ 4@
0EF3: lerp 1@ 2@ 3@ store_to 4@
0F0D: set_matrix_look_direction 1@ origin 2@ 3@ 4@ dir 5@ 6@ 7@
0D0B: get_actor 1@ bone 2@ matrix_to 3@
0D30: 3@ = actor 1@ bone 2@
0D31: 2@ = bone 1@ offset_vector
0D32: 2@ = bone 1@ quat
0E21: get_audio_sfx_volume 1@
0E22: get_audio_radio_volume 1@
0E3B: get_audiostream_internal 1@ store_to 2@
0E28: write_struct 1@ offset 2@ size 3@ value 4@
0D4E: 4@ = read_struct 1@ offset 2@ size 3@
0D27: copy_memory 1@ to 2@ size 3@
0D37: write_struct_param 1@ param 2@ value 3@
0D38: 3@ = read_struct_param 1@ param 2@
0E6A: make_nop 1@ size 2@
0EE2: read_struct_offset_multi 1@ offset 2@ total 3@ size 4@
0EE3: write_struct_offset_multi 1@ offset 2@ count 3@ size 4@
0E2A: add_cleo_blip 1@ position 2@ 3@ is_short 4@ RGBA 5@ 6@ 7@ 8@ store_to 9@
0E2B: remove_cleo_blip 1@
0E2E: create_render_object_to_char_bone 1@ model 2@ bone 3@ offset 4@ 5@ 6@
rotation 7@ 8@ 9@ store_to 10@
0F02: create_render_object_to_char_bone_from_special 1@ special_model 2@ bone 3@
offset 4@ 5@ 6@ rotation 7@ 8@ 9@ scale 10@ 11@ 12@ store_to 13@
0F03: create_render_object_to_object 1@ model 2@ offset 3@ 4@ 5@ rotation 6@ 7@ 8@
store_to 9@
0F04: create_render_object_to_object_from_special 1@ special_model 2@ offset 3@ 4@
5@ rotation 6@ 7@ 8@ store_to 9@
0E2F: delete_render_object 1@
0E30: set_render_object_auto_hide 1@ dead 2@ weapon 3@ car 4@
0E31: set_render_object_visible 1@ 2@
0E35: set_render_object_position 1@ 2@ 3@ 4@
0E36: set_render_object_rotation 1@ 2@ 3@ 4@
0E37: set_render_object_scale 1@ 2@ 3@ 4@
0E3A: set_render_object_distortion 1@ 2@ 3@ 4@ 5@
0E33: get_pickup_this_coord 1@ 2@ 3@ only_available 4@ store_to 5@
0E34: get_pickup_model 1@ 2@
0E38: get_pickup_pointer 1@ store_to 2@
0E39: get_pickup_type 1@ store_to 2@
0E4E: display_onscreen_timer_local 1@ direction 2@
0E4F: display_onscreen_timer_with_string_local 1@ direction 2@ GXT 3@
0E50: display_onscreen_counter_local 1@ direction 2@
0E51: display_onscreen_counter_with_string_local 1@ direction 2@ GXT 3@
0E52: display_two_onscreen_counters_local 1@ max_value 2@
0E53: display_two_onscreen_counters_with_string_local 1@ max_value 2@ GXT 3@
0E54: clear_onscreen_timer_local 1@
0E55: clear_onscreen_counter_local 1@
0E56: set_onscreen_counter_flash_when_first_displayed_local 1@ flash 2@
0E57: set_timer_beep_countdown_time_local 1@ secs 2@
0E58: set_onscreen_counter_colour_local 1@ color 2@
0E42: is_char_doing_task_id 1@ 2@
0E43: get_char_task_pointer_by_id 1@ 2@ store_to 3@
0E44: get_char_kill_target_char 1@ store_to 2@
0E46: is_char_using_gun 1@
0E47: is_char_fighting 1@
0E48: is_char_fallen_on_ground 1@
0E49: is_char_entering_any_car 1@
0E4A: is_char_exiting_any_car 1@
0E4B: is_char_playing_any_script_animation 1@ include_anims 2@
0E4C: is_char_doing_any_important_task 1@ include_anims 2@
0E96: clear_char_primary_tasks 1@
0E97: clear_char_secondary_tasks 1@
0EFF: get_char_simplest_active_task 1@ id_to 2@ pointer_to 3@
0D3A: get_collision_between_points 1@ 2@ 3@ and 4@ 5@ 6@ flags 7@ 8@ 9@ 10@ 11@ 12@
13@ 14@ ignore_entity 15@ store_point_to 17@ 18@ 19@ entity_to 20@ colpoint_data_to
16@
0D3B: get_colpoint_normal_vector 1@ store_to 2@ 3@ 4@
0D3C: get_colpoint_surface 1@ store_to 2@
0D3E: get_colpoint_depth 1@ store_to 2@
0E6B: get_colpoint_lighting 1@ from_night 2@ store_to 3@
0EE1: get_colpoint_coordinates 1@ store_to 2@ 3@ 4@
0E72: create_list 1@ store_to 2@
0E73: delete_list 1@
0E74: list_add 1@ value 2@
0E75: list_remove_value 1@ value 2@
0E76: list_remove_index 1@ index 2@
0E77: get_list_size 1@ size 2@
0E78: get_list_value_by_index 1@ index 2@ store_to 3@
0E79: reset_list 1@
0E7A: get_list_string_value_by_index 1@ index 2@ store_to 3@
0E7B: list_add_string 1@ value 2@
0E7C: list_remove_string_value 1@ value 2@
0E7D: list_remove_index 1@ start 2@ end 3@
0E7E: reverse_list 1@
0F06: replace_list_value_by_index 1@ index 2@ value 3@
0F07: replace_list_string_value_by_index 1@ index 2@ value 3@
0F08: insert_list_value_by_index 1@ index 2@ value 3@
0F09: insert_list_string_value_by_index 1@ index 2@ value 3@
0F00: load_special_model_dff 1@v txd 2@v store_to 3@
0F01: remove_special_model 1@
0F05: get_special_model_data 1@ clump_to 2@ atomic_to 3@ txd_index_to 4@