Skip to content

Instantly share code, notes, and snippets.

@nadalao
Created September 14, 2018 16:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nadalao/5327f77b8ec7e8773bec91e1f003ca63 to your computer and use it in GitHub Desktop.
Save nadalao/5327f77b8ec7e8773bec91e1f003ca63 to your computer and use it in GitHub Desktop.
nadalao files v1
SCRIPT_START
{
LVAR_INT scplayer area ufo et carro dia abduzido onMission iDay[2]
LVAR_FLOAT x y z x1 y1 z1 z2
GET_PLAYER_CHAR 0 scplayer
//-576.1 2527.4 72.7 mercado
//175.8 1920.4 18.0 area restrita
//-261.4 1584.3 67.8 big ear
//1082.0 1080.6 10.8 lagarto ninja
//25.5 -98.5 0.6 ponto 0
//-845.6 -747.3 152.6 fábrica
//-1218.8 -1685.3 83.0 barrão
main_loop:
WAIT 0
GET_CURRENT_DAY_OF_WEEK dia
GET_CURRENT_DAY_OF_WEEK iDay[0]
READ_MEMORY 0x96ABA0 1 0 onMission
IF onMission = FALSE
AND NOT iDay[0] = iDay[1]
SWITCH dia
CASE 1
IF LOCATE_CHAR_ANY_MEANS_2D scplayer -576.1 2527.4 200.0 200.0 FALSE //MERCADO
x = -576.1
y = 2527.4
GOSUB criar_nave
ENDIF
BREAK
CASE 2
IF LOCATE_CHAR_ANY_MEANS_2D scplayer 175.8 1920.4 200.0 200.0 FALSE //AREA RESTRITA
x = 175.8
y = 1920.4
GOSUB criar_nave
ENDIF
BREAK
CASE 3
IF LOCATE_CHAR_ANY_MEANS_2D scplayer -261.4 1584.3 200.0 200.0 FALSE //BIG EAR
x = -261.4
y = 1584.3
GOSUB criar_nave
ENDIF
BREAK
CASE 4
IF LOCATE_CHAR_ANY_MEANS_2D scplayer 1082.0 1080.6 200.0 200.0 FALSE //LAGARTO NINJA
x = 1082.0
y = 1080.6
GOSUB criar_nave
ENDIF
BREAK
CASE 5
IF LOCATE_CHAR_ANY_MEANS_2D scplayer 25.5 -98.5 200.0 200.0 FALSE //PONTO 0
x = 25.5
y = -98.5
GOSUB criar_nave
ENDIF
BREAK
CASE 6
IF LOCATE_CHAR_ANY_MEANS_2D scplayer -845.6 -747.3 200.0 200.0 FALSE //FÁBRICA
x = -845.6
y = -747.3
GOSUB criar_nave
ENDIF
BREAK
CASE 7
IF LOCATE_CHAR_ANY_MEANS_2D scplayer -1218.8 -1685.3 200.0 200.0 FALSE //BARRÃO
x = -1218.8
y = -1685.3
GOSUB criar_nave
ENDIF
BREAK
ENDSWITCH
ENDIF
GOTO main_loop
criar_nave:
iDay[1] = iDay[0]
REQUEST_MODEL SPARROW
WHILE NOT HAS_MODEL_LOADED SPARROW
WAIT 0
ENDWHILE
LOAD_SPECIAL_CHARACTER 7 truth
WHILE NOT HAS_SPECIAL_CHARACTER_LOADED 7
WAIT 0
ENDWHILE
CREATE_CAR SPARROW x y -100.0 ufo
CREATE_CHAR_INSIDE_CAR ufo PEDTYPE_SPECIAL SPECIAL07 et
GET_CHAR_COORDINATES et x y z
z2 = z
z2 += 60.0
SET_CAR_VISIBLE ufo FALSE
SET_CAR_CAN_BE_DAMAGED ufo FALSE
HELI_GOTO_COORDS ufo x y z2 z2 z2
WHILE NOT LOCATE_CHAR_ANY_MEANS_3D et x y z2 10.0 10.0 5.0 FALSE
WAIT 0
ENDWHILE
SET_CAR_VISIBLE ufo TRUE
SET_CAR_CAN_BE_DAMAGED ufo TRUE //subiu
GET_CHAR_COORDINATES scplayer x y z
UNLOAD_SPECIAL_CHARACTER 7
SWITCH dia
CASE 1
HELI_GOTO_COORDS ufo 175.8 1920.4 18.0 z2 z2 //MERCADO
x = 175.8
y = 1920.4
BREAK
CASE 2
HELI_GOTO_COORDS ufo -1218.8 -1685.3 83.0 z2 z2 //AREA RESTRITA
x = -1218.8
y = -1685.3
BREAK
CASE 3
HELI_GOTO_COORDS ufo -1218.8 -1685.3 83.0 z2 z2 //BIG EAR
x = -1218.8
y = -1685.3
BREAK
CASE 4
HELI_GOTO_COORDS ufo 175.8 1920.4 18.0 z2 z2 //LAGARTO NINJA
x = 175.8
y = 1920.4
BREAK
CASE 5
HELI_GOTO_COORDS ufo 175.8 1920.4 18.0 z2 z2 //PONTO 0
x = 175.8
y = 1920.4
BREAK
CASE 6
HELI_GOTO_COORDS ufo 175.8 1920.4 18.0 z2 z2 //FÁBRICA
x = 175.8
y = 1920.4
BREAK
CASE 7
HELI_GOTO_COORDS ufo 175.8 1920.4 18.0 z2 z2 //BARRÃO
x = 175.8
y = 1920.4
BREAK
ENDSWITCH
WHILE NOT LOCATE_CHAR_ANY_MEANS_2D et x y 10.0 10.0 FALSE
AND abduzido = 0
WAIT 0
GET_CHAR_COORDINATES scplayer x1 y1 z1
IF LOCATE_CHAR_ANY_MEANS_CHAR_2D et scplayer 20.0 20.0 FALSE
abduzido = 1
ENDIF
ENDWHILE
IF abduzido = 1
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS et 0.0 -20.0 0.0 x y z
HELI_GOTO_COORDS ufo x y z z2 z2
WAIT 1000
GET_CHAR_COORDINATES scplayer x y z
z2 = z
z2 += 60.0
HELI_GOTO_COORDS ufo x y z2 z2 z2
GET_CAR_COORDINATES ufo x1 y1 z2
WHILE NOT z > z2
WAIT 0
TASK_PLAY_ANIM_NON_INTERRUPTABLE scplayer "FALL_fall" "PED" 1.0 0 0 0 1 -1
GET_CAR_COORDINATES ufo x y z1
z +=@ 0.1
CLEO_CALL SetCharPosSimple 0 (scplayer x y z)
ENDWHILE
CLEAR_CHAR_TASKS_IMMEDIATELY scplayer
IF IS_CHAR_IN_ANY_CAR scplayer
STORE_CAR_CHAR_IS_IN_NO_SAVE scplayer carro
TASK_LEAVE_CAR_IMMEDIATELY scplayer carro
WHILE IS_CHAR_IN_ANY_CAR scplayer
WAIT 0
GET_CAR_COORDINATES ufo x y z1
SET_CHAR_COORDINATES scplayer x y z
ENDWHILE
DELETE_CAR carro
ENDIF
WARP_CHAR_INTO_CAR_AS_PASSENGER scplayer ufo -1
SET_RADIO_CHANNEL 12
SET_PLAYER_CONTROL 0 FALSE
WHILE NOT IS_CHAR_DEAD scplayer
WAIT 150
DAMAGE_CHAR scplayer 1 0
ENDWHILE
ENDIF
IF DOES_CHAR_EXIST et
MARK_CHAR_AS_NO_LONGER_NEEDED et
DELETE_CHAR et
ENDIF
IF DOES_VEHICLE_EXIST ufo
MARK_VEHICLE_MOD_AS_NO_LONGER_NEEDED SPARROW
MARK_CAR_AS_NO_LONGER_NEEDED ufo
DELETE_CAR ufo
ENDIF
RETURN
area:
GENERATE_RANDOM_INT_IN_RANGE 0 8 area
SWITCH area
CASE 0
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS scplayer -120.0 0.0 0.0 x y z
BREAK
CASE 1
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS scplayer -120.0 -120.0 0.0 x y z
BREAK
CASE 2
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS scplayer 0.0 -120.0 0.0 x y z
BREAK
CASE 3
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS scplayer 120.0 -120.0 0.0 x y z
BREAK
CASE 4
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS scplayer -120.0 120.0 0.0 x y z
BREAK
CASE 5
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS scplayer 0.0 120.0 0.0 x y z
BREAK
CASE 6
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS scplayer 120.0 0.0 0.0 x y z
BREAK
CASE 7
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS scplayer 120.0 120.0 0.0 x y z
BREAK
ENDSWITCH
RETURN
}
{
LVAR_INT hChar // In
LVAR_FLOAT x y z // In
LVAR_INT pPed pMatrix pCoord
SetCharPosSimple:
GET_PED_POINTER hChar pPed
pMatrix = pPed + 0x14
READ_MEMORY pMatrix 4 FALSE (pMatrix)
pCoord = pMatrix + 0x30
WRITE_MEMORY pCoord 4 (x) FALSE
pCoord += 0x4 // y
WRITE_MEMORY pCoord 4 (y) FALSE
pCoord += 0x4 // y
WRITE_MEMORY pCoord 4 (z) FALSE
CLEO_RETURN 0 ()
}
SCRIPT_END
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment