thanks for your guidance big, it's appreciated greatly - here's what I have so far, I'm having trouble with it crashing after hittin M for the 3rd time.. is it because I'm re-declaring the local variables? or do I need to create a local variable that keeps track of the aspects I've changed..
also, I was wanting the text to read "Manettino: Activated", "Suspension: Touring", "Suspension: Sport", "Suspension: Novitec" and "Suspension: Racing" - but as I found out, the hexa for the colon doesn't work properly, is there anything I could do about that? can I use characters, or does it simply need to be a space (5F)
also, I was wanting the text to read "Manettino: Activated", "Suspension: Touring", "Suspension: Sport", "Suspension: Novitec" and "Suspension: Racing" - but as I found out, the hexa for the colon doesn't work properly, is there anything I could do about that? can I use characters, or does it simply need to be a space (5F)
- Code:
{$CLEO .cs}
//-------------MAIN---------------
thread 'MANETTINO'
:TINO_1
wait 0
00D6: if
Player.Defined($PLAYER_CHAR)
004D: jump_if_false @TINO_1
:TINO_2
wait 0
00D6: if and
00DF: actor $PLAYER_ACTOR driving
00DD: actor $PLAYER_ACTOR driving_car_with_model #CHEETAH
004D: jump_if_false @TINO_2
00D6: if
0AB0: key_pressed 77
004D: jump_if_false @TINO_2
gosub @ReadAddress
20@ -= @Text0
gosub @CreateTextBox
:TINO_3
wait 250
00D6: if
0AB0: key_pressed 77
004D: jump_if_false @TINO_3
03C0: 0@ = actor $PLAYER_ACTOR car
0A97: 1@ = car 0@ struct
1@ += 192
0A8C: write_memory 1@ size 4 value 0.08 virtual_protect 0
0A97: 2@ = car 0@ struct
2@ += 152
0A8C: write_memory 2@ size 4 value 0.45 virtual_protect 0
0A97: 3@ = car 0@ struct
3@ += 158
0A8C: write_memory 3@ size 4 value -0.16 virtual_protect 0
0A97: 4@ = car 0@ struct
4@ += 144
0A8C: write_memory 4@ size 4 value 1000.0 virtual_protect 0
gosub @ReadAddress
20@ -= @Text1
gosub @CreateTextBox
:TINO_4
wait 250
00D6: if
0AB0: key_pressed 77
004D: jump_if_false @TINO_4
03C0: 0@ = actor $PLAYER_ACTOR car
0A97: 1@ = car 0@ struct
1@ += 192
0A8C: write_memory 1@ size 4 value -0.04 virtual_protect 0
0A97: 2@ = car 0@ struct
2@ += 152
0A8C: write_memory 2@ size 4 value -0.20 virtual_protect 0
0A97: 3@ = car 0@ struct
3@ += 158
0A8C: write_memory 3@ size 4 value 0.08 virtual_protect 0
0A97: 4@ = car 0@ struct
4@ += 144
0A8C: write_memory 4@ size 4 value -500.0 virtual_protect 0
gosub @ReadAddress
20@ -= @Text2
gosub @CreateTextBox
:TINO_5
wait 250
00D6: if
0AB0: key_pressed 77
004D: jump_if_false @TINO_5
03C0: 0@ = actor $PLAYER_ACTOR car
0A97: 1@ = car 0@ struct
1@ += 192
0A8C: write_memory 1@ size 4 value -0.04 virtual_protect 0
0A97: 2@ = car 0@ struct
2@ += 152
0A8C: write_memory 2@ size 4 value -0.20 virtual_protect 0
0A97: 3@ = car 0@ struct
3@ += 158
0A8C: write_memory 3@ size 4 value 0.08 virtual_protect 0
0A97: 4@ = car 0@ struct
4@ += 144
0A8C: write_memory 4@ size 4 value -500.0 virtual_protect 0
gosub @ReadAddress
20@ -= @Text3
gosub @CreateTextBox
:TINO_6
wait 250
00D6: if
0AB0: key_pressed 77
004D: jump_if_false @TINO_6
03C0: 0@ = actor $PLAYER_ACTOR car
0A97: 1@ = car 0@ struct
1@ += 192
0A8C: write_memory 1@ size 4 value -0.04 virtual_protect 0
0A97: 2@ = car 0@ struct
2@ += 152
0A8C: write_memory 2@ size 4 value -0.05 virtual_protect 0
0A97: 3@ = car 0@ struct
3@ += 158
0A8C: write_memory 3@ size 4 value 0.08 virtual_protect 0
0A97: 4@ = car 0@ struct
4@ += 144
0A8C: write_memory 4@ size 4 value -500.0 virtual_protect 0
gosub @ReadAddress
20@ -= @Text4
gosub @CreateTextBox
:TINO_7
wait 0
00D6: if
80DD: NOT actor $PLAYER_ACTOR driving_car_with_model #CHEETAH
004D: jump_if_false @TINO_3
01C3: remove_references_to_car 0@
gosub @ReadAddress
20@ -= @Text
gosub @CreateTextBox
:TINO_8
0002: jump @TINO_2
:ReadAddress
0A9F: 20@ = current_thread_pointer
20@ += 0x10
0A8D: 20@ = read_memory 20@ size 4 virtual_protect 0
return // -- as all gosubs return
:CreateTextBox
if
0AA9: is_game_version_original
then
0AA5: call 0x588BE0 num_params 4 pop 4 0 0 0 20@
else
0AA5: call 0x5893B0 num_params 4 pop 4 0 0 0 20@
end
return // -- as all gosubs return
:Text0
hex
4D 61 6E 65 74 74 69 6E 6F 5F 41 63 74 69 76 61
61 74 65 64 00
end
:Text
hex
4D 61 6E 65 74 74 69 6E 6F 5F 44 65 61 63 74 69
76 61 74 65 64 00
end
:Text1
hex
53 75 73 70 65 6E 73 69 6F 6E 3A 5F 54 6F 76 72
69 6E 67 00
end
:Text2
hex
53 75 73 70 65 6E 73 69 6F 6E 3A 5F 53 70 6F 72
74 00
end
:Text3
hex
53 75 73 70 65 6E 73 69 6F 6E 3A 5F 4E 6F 76 69
74 65 63 00
end
:Text4
hex
53 75 73 70 65 6E 73 69 6F 6E 3A 5F 52 61 63 69
6E 67 00
end