Difference between revisions of "Clothes pickup"
Jump to navigation
Jump to search
(added alternate format) |
m |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | This is a code snippet | + | This is a code snippet of a '''clothes pickup''' in [[Sanny Builder]]'s format for [[Vice City]]. This code is based on the clothes pickup script in Vice City. Even the "no fall off bike" glitch works. |
− | < | + | {{Pre|class=sb-code|1= |
− | + | <span class="k">const</span> | |
− | + | PICKUP_PICKED_UP = <span class="nv">0@</span> | |
− | + | CLOTHES_1 = <span class="nv">1@</span> | |
+ | CLOTHES_1_TYPE = <span class="m">13</span> <span class="c1">// set your clothing, see list of clothing at [[055B]]</span> | ||
+ | CLOTHES_1_X = <span class="m">0.0</span> <span class="c1">// set your x position</span> | ||
+ | CLOTHES_1_Y = <span class="m">0.0</span> <span class="c1">// set your y position</span> | ||
+ | CLOTHES_1_Z = <span class="m">0.0</span> <span class="c1">// set your z position</span> | ||
+ | <span class="k">end</span> | ||
− | + | <span class="c1">// create pickup</span> | |
− | + | [[055B]]: CLOTHES_1 = create_clothes_pickup CLOTHES_1_TYPE at CLOTHES_1_X CLOTHES_1_Y CLOTHES_1_Z | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | : | + | <span class="k">while</span> <span class="k">true</span> |
− | + | <span class="k">wait</span> <span class="m">0</span> ms | |
+ | <span class="k">if</span> | ||
+ | PICKUP_PICKED_UP == <span class="m">0</span> | ||
+ | <span class="k">then</span> | ||
+ | <span class="k">if</span> | ||
+ | 0214: pickup CLOTHES_1 picked_up | ||
+ | <span class="k">then</span> | ||
+ | <span class="k">gosub</span> <span class="nl">@CLOTHES_FADE_OUT</span> | ||
+ | <span class="k">if</span> | ||
+ | [[0256]]: player <span class="nv">$PLAYER_CHAR</span> defined | ||
+ | <span class="k">then</span> | ||
+ | 0352: set_actor <span class="nv">$PLAYER_ACTOR</span> skin_to <span class="s1">'PLAYER'</span> <span class="c1">// set your character, see list of special characters at [[023C]]</span> | ||
+ | <span class="k">end</span> | ||
+ | <span class="k">gosub</span> <span class="nl">@CLOTHES_FADE_IN</span> | ||
+ | <span class="k">end</span> | ||
+ | <span class="k">end</span> | ||
+ | <span class="k">end</span> | ||
− | : | + | <span class="nl">:CLOTHES_FADE_OUT</span> |
− | + | PICKUP_PICKED_UP = <span class="m">1</span> | |
− | // | + | <span class="k">if</span> |
− | + | [[0256]]: player <span class="nv">$PLAYER_CHAR</span> defined | |
− | + | <span class="k">then</span> | |
− | + | [[0169]]: set_fade_color <span class="m">0</span> <span class="m">0</span> <span class="m">1</span> | |
− | + | <span class="k">fade</span> <span class="m">0</span> <span class="m">500</span> ms | |
− | + | <span class="k">while</span> <span class="k">if</span> [[016B]]: <span class="k">fading</span> | |
− | 0256: player $PLAYER_CHAR defined | + | <span class="k">wait</span> <span class="m">0</span> ms |
− | + | <span class="k">end</span> | |
− | + | <span class="k">else</span> | |
+ | PICKUP_PICKED_UP = <span class="m">0</span> | ||
+ | <span class="k">end</span> | ||
+ | <span class="k">if</span> | ||
+ | [[0256]]: player <span class="nv">$PLAYER_CHAR</span> defined | ||
+ | <span class="k">then</span> | ||
+ | 03BF: set_player <span class="nv">$PLAYER_CHAR</span> ignored_by_everyone_to <span class="m">1</span> | ||
+ | [[01B4]]: set_player <span class="nv">$PLAYER_CHAR</span> can_move <span class="m">0</span> | ||
+ | <span class="k">else</span> | ||
+ | PICKUP_PICKED_UP = <span class="m">0</span> | ||
+ | <span class="k">end</span> | ||
+ | <span class="k">return</span> | ||
− | : | + | <span class="nl">:CLOTHES_FADE_IN</span> |
− | + | <span class="k">if</span> | |
+ | [[0256]]: player <span class="nv">$PLAYER_CHAR</span> defined | ||
+ | <span class="k">then</span> | ||
+ | [[038B]]: load_requested_models | ||
+ | <span class="k">if</span> | ||
+ | [[0256]]: player <span class="nv">$PLAYER_CHAR</span> defined | ||
+ | <span class="k">then</span> | ||
+ | 0353: refresh_actor <span class="nv">$PLAYER_ACTOR</span> | ||
+ | <span class="k">end</span> | ||
+ | 03BF: set_player <span class="nv">$PLAYER_CHAR</span> ignored_by_everyone_to <span class="m">0</span> | ||
+ | <span class="k">if</span> | ||
+ | [[010F|810F]]: <span class="k">not</span> player <span class="nv">$PLAYER_CHAR</span> wanted_level > <span class="m">2</span> | ||
+ | <span class="k">then</span> | ||
+ | [[0110]]: clear_player <span class="nv">$PLAYER_CHAR</span> wanted_level | ||
+ | <span class="k">end</span> | ||
+ | [[01B4]]: set_player <span class="nv">$PLAYER_CHAR</span> can_move <span class="m">1</span> | ||
+ | PICKUP_PICKED_UP = <span class="m">0</span> | ||
+ | <span class="k">fade</span> <span class="m">1</span> <span class="m">500</span> ms | ||
+ | [[03E5]]: text_box <span class="s1">'CLOHELP'</span> <span class="c1">// Clean Clothes!!</span> | ||
+ | <span class="k">else</span> | ||
+ | PICKUP_PICKED_UP = <span class="m">0</span> | ||
+ | <span class="k">end</span> | ||
+ | <span class="k">return</span> | ||
+ | }} | ||
+ | If you want to add this code into the [[main.scm]], read the tutorial on [[Create a script|how to create a script]]. See [[023C]] for a list of available special characters. To use clothing type 13, open the [[GXT]] file and search for <code>OUTFT13</code> to edit the text of the clothing pickup. | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
[[Category:Code Snippets]] | [[Category:Code Snippets]] |
Latest revision as of 18:01, 2 June 2017
This is a code snippet of a clothes pickup in Sanny Builder's format for Vice City. This code is based on the clothes pickup script in Vice City. Even the "no fall off bike" glitch works.
const PICKUP_PICKED_UP = 0@ CLOTHES_1 = 1@ CLOTHES_1_TYPE = 13 // set your clothing, see list of clothing at 055B CLOTHES_1_X = 0.0 // set your x position CLOTHES_1_Y = 0.0 // set your y position CLOTHES_1_Z = 0.0 // set your z position end // create pickup 055B: CLOTHES_1 = create_clothes_pickup CLOTHES_1_TYPE at CLOTHES_1_X CLOTHES_1_Y CLOTHES_1_Z while true wait 0 ms if PICKUP_PICKED_UP == 0 then if 0214: pickup CLOTHES_1 picked_up then gosub @CLOTHES_FADE_OUT if 0256: player $PLAYER_CHAR defined then 0352: set_actor $PLAYER_ACTOR skin_to 'PLAYER' // set your character, see list of special characters at 023C end gosub @CLOTHES_FADE_IN end end end :CLOTHES_FADE_OUT PICKUP_PICKED_UP = 1 if 0256: player $PLAYER_CHAR defined then 0169: set_fade_color 0 0 1 fade 0 500 ms while if 016B: fading wait 0 ms end else PICKUP_PICKED_UP = 0 end if 0256: player $PLAYER_CHAR defined then 03BF: set_player $PLAYER_CHAR ignored_by_everyone_to 1 01B4: set_player $PLAYER_CHAR can_move 0 else PICKUP_PICKED_UP = 0 end return :CLOTHES_FADE_IN if 0256: player $PLAYER_CHAR defined then 038B: load_requested_models if 0256: player $PLAYER_CHAR defined then 0353: refresh_actor $PLAYER_ACTOR end 03BF: set_player $PLAYER_CHAR ignored_by_everyone_to 0 if 810F: not player $PLAYER_CHAR wanted_level > 2 then 0110: clear_player $PLAYER_CHAR wanted_level end 01B4: set_player $PLAYER_CHAR can_move 1 PICKUP_PICKED_UP = 0 fade 1 500 ms 03E5: text_box 'CLOHELP' // Clean Clothes!! else PICKUP_PICKED_UP = 0 end return
If you want to add this code into the main.scm, read the tutorial on how to create a script. See 023C for a list of available special characters. To use clothing type 13, open the GXT file and search for OUTFT13
to edit the text of the clothing pickup.