Player::setClothes: Difference between revisions

From RAGE Multiplayer Wiki
(Created page with "This function set a clothing for player. == Syntax == <syntaxhighlight lang="javascript"> Object player.setClothes(Number componentNumber, Number drawable, Number texture, Num...")
 
No edit summary
 
(25 intermediate revisions by 11 users not shown)
Line 1: Line 1:
This function set a clothing for player.
This function set clothing for player.
Alternative of client-side function: [https://wiki.rage.mp/index.php?title=Player::setComponentVariation Player::setComponentVariation]
 
{| class="wikitable"
|-
! colspan="4"| Clothes
|-
! Component ID !! Part !! colspan="2"| Gender
|-
| style="text-align:center" | 0 || Head || colspan="2"|
|-
| style="text-align:center" | 1 || Masks || colspan="2"| [[Masks|Male + Female]]
|-
| style="text-align:center" | 2 || Hair Styles || [[Male_Hair_Styles|Male]] || | [[Female_Hair_Styles|Female]]
|-
| style="text-align:center" | 3 || Torsos || [[Male_Torsos|Male]] || [[Female_Torsos|Female]]
|-
| style="text-align:center" | 4 || Legs || [[Male_Legs|Male]] || [[Female_Legs|Female]]
|-
| style="text-align:center" | 5 || | Bags and Parachutes || colspan="2" | [[Bags and Parachutes|Male + Female]]
|-
| style="text-align:center" | 6 || Shoes || [[Male_Shoes|Male]] || [[Female_Shoes|Female]]
|-
| style="text-align:center" | 7 || Accessories || [[Male_Accessories|Male]] || [[Female_Accessories|Female]]
|-
| style="text-align:center" | 8 || Undershirts || [[Male_Undershirts|Male]] || [[Female_Undershirts|Female]]
|-
| style="text-align:center" | 9 || Body Armors || [[Male_Body_Armors|Male]] || [[Female_Body_Armors|Female]]
|-
| style="text-align:center" | 10 || Decals || [[Male_Decals|Male]] || [[Female_Decals|Female]]
|-
| style="text-align:center" | 11 || Tops || [[Male_Tops|Male]] || [[Female_Tops|Female]]
|-
|}
 
== Known issues ==
*This function can't handle drawable over 255. If you need, use player.data & entityDataChange + entityStreamIn events so you can set it client-side with [https://wiki.rage.mp/index.php?title=Player::setComponentVariation setComponentVariation]. Fixed in 1.0+.
 
== Syntax ==
== Syntax ==
<syntaxhighlight lang="javascript">
<pre>
Object player.setClothes(Number componentNumber, Number drawable, Number texture, Number palette)
player.setClothes(Number componentNumber, Number drawable, Number texture, Number palette)
</syntaxhighlight>
</pre>
List of components:
* 0 - Head
* 1 - Beard
* 2 - Hair
* 3 - Torso
* 4 - Legs
* 5 - Hands
* 6 - Foot
* 7 - None?
* 8 - Accessories like parachute, scuba tank
* 9 - Accessories like bags, mask, scuba mask
* 10- Decals and mask
* 11 - Auxiliary parts for torso
Object keys:
* drawable - ID of clothing.
* texture - ID of texture.
* palette - ID of palette.


== Example ==
== Example ==
This example outputs player clothes for component ID.
This example changes clothes.
<syntaxhighlight lang="javascript">
{{ServersideCode|
<pre>
mp.events.add('playerCommand', (player, command) => {
mp.events.add('playerCommand', (player, command) => {
   let arr = command.split(' ');
   let arr = command.split(' ');
   if (arr[0] == 'getclothes') {
   if (arr[0] == 'setclothes') {
     if (arr.length < 4 || !parseInt(arr[1]) || !parseInt(arr[2]) || !parseInt(arr[3])) {
     if (arr.length < 5 || parseInt(arr[1]) === undefined || parseInt(arr[2]) === undefined || parseInt(arr[3]) === undefined || parseInt(arr[4]) === undefined) {
       return player.outputChatBox('Use syntax: /getclothes [component_id] [drawable_id] [texture_id] [palette_id]');
       return player.outputChatBox('Use syntax: /setclothes [component_id] [drawable_id] [texture_id] [palette_id]');
     } else {
     } else {
       player.setClothes(parseInt(arr[1]), parseInt(arr[2]), parseInt(arr[3]));
       player.setClothes(parseInt(arr[1]), parseInt(arr[2]), parseInt(arr[3]), parseInt(arr[4]));
     }
     }
   }
   }
});
});
</syntaxhighlight>
</pre>
}}
 
==See also==
{{Player_block}}
 
[[Category:Player Appearance]]
[[Category:Server-side Function]]

Latest revision as of 17:36, 6 July 2021

This function set clothing for player. Alternative of client-side function: Player::setComponentVariation

Clothes
Component ID Part Gender
0 Head
1 Masks Male + Female
2 Hair Styles Male Female
3 Torsos Male Female
4 Legs Male Female
5 Bags and Parachutes Male + Female
6 Shoes Male Female
7 Accessories Male Female
8 Undershirts Male Female
9 Body Armors Male Female
10 Decals Male Female
11 Tops Male Female

Known issues

  • This function can't handle drawable over 255. If you need, use player.data & entityDataChange + entityStreamIn events so you can set it client-side with setComponentVariation. Fixed in 1.0+.

Syntax

player.setClothes(Number componentNumber, Number drawable, Number texture, Number palette)

Example

This example changes clothes.

Server-Side
mp.events.add('playerCommand', (player, command) => {
  let arr = command.split(' ');
  if (arr[0] == 'setclothes') {
    if (arr.length < 5 || parseInt(arr[1]) === undefined || parseInt(arr[2]) === undefined || parseInt(arr[3]) === undefined || parseInt(arr[4]) === undefined) {
      return player.outputChatBox('Use syntax: /setclothes [component_id] [drawable_id] [texture_id] [palette_id]');
    } else {
      player.setClothes(parseInt(arr[1]), parseInt(arr[2]), parseInt(arr[3]), parseInt(arr[4]));
    }
  }
});

See also