SetPedStat: Difference between revisions
(Maximum stat value is actually 1000, not 999. Removed uneccesary "Server" section. Fixed and improved the example too) |
No edit summary |
||
(10 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{Shared function}} | ||
{{Needs_Checking| | {{Needs_Checking| | ||
*Things like infinite run, fire proof CJ | *Things like infinite run, fire proof CJ, 150 armor have special activation flags. They need a way to be triggered on/off. | ||
}} | }} | ||
__NOTOC__ | __NOTOC__ | ||
This function allows you to set the value of a specific statistic for a [[ped]]. '''Visual stats (FAT and BODY_MUSCLE) can only be used on the CJ skin''', they have no effect on other skins. | This function allows you to set the value of a specific statistic for a [[ped]]. '''Visual stats (FAT and BODY_MUSCLE) can only be used on the CJ skin''', they have no effect on other skins. When this function is used client-side, it can only be used on client-side created peds. | ||
==Syntax== | ==Syntax== | ||
Line 20: | Line 20: | ||
===Returns=== | ===Returns=== | ||
Returns ''true'' if the statistic was changed succesfully. Returns ''false'' if an invalid player is specified, if the stat | Returns ''true'' if the statistic was changed succesfully. Returns ''false'' if an invalid player is specified, if the stat ID/value is out of acceptable range or if the FAT or BODY_MUSCLE stats are used on non-CJ players. | ||
==Examples== | ==Examples== | ||
Line 57: | Line 57: | ||
addCommandHandler("upgradeskills", function(thePlayer) | addCommandHandler("upgradeskills", function(thePlayer) | ||
-- Set every stat to 1000 (the maximum value) | -- Set every stat to 1000 (the maximum value) | ||
for _, stat in ipairs({ 24, 69, 70, 71, 72, 73, 74, 76, 77, 78, 79 | for _, stat in ipairs({ 24, 69, 70, 71, 72, 73, 74, 76, 77, 78, 79 }) do | ||
setPedStat(thePlayer, stat, 1000) | setPedStat(thePlayer, stat, 1000) | ||
outputChatBox("Your game stats upgraded to maximum!", thePlayer, 0, 255, 0, false) | |||
end | |||
-- Set player health to the maximum, as changing the stat keeps the current one | |||
if (isPedDead (thePlayer) ~= true) then | |||
setElementHealth(thePlayer, 100 + (getPedStat(ped, 24) - 569) / 4.31 return math.max(1, maxhealth)) | |||
-- Tell the player what we did | |||
outputChatBox("And your health upgraded to maximum!", thePlayer, 0, 255, 0, false) | |||
else | |||
outputChatBox("Your health can't be restored because you are already dead!", thePlayer, 0, 255, 0, false) | |||
end | end | ||
end) | end) | ||
</syntaxhighlight> | </syntaxhighlight> |
Latest revision as of 17:51, 20 September 2021
This article needs checking. | |
Reason(s):
|
This function allows you to set the value of a specific statistic for a ped. Visual stats (FAT and BODY_MUSCLE) can only be used on the CJ skin, they have no effect on other skins. When this function is used client-side, it can only be used on client-side created peds.
Syntax
bool setPedStat ( ped thePed, int stat, float value )
Required Arguments
- thePed: the ped whose statistic you want to modify.
- stat: the stat ID.
- 0: PROGRESS_MADE
- 1: TOTAL_PROGRESS
- 2: LONGEST_BASKETBALL
Distances:
- 3: DIST_FOOT
- 4: DIST_CAR
- 5: DIST_BIKE
- 6: DIST_BOAT
- 7: DIST_GOLF_CART
- 8: DIST_HELICOPTER
- 9: DIST_PLANE
- 10: LONGEST_WHEELIE_DIST
- 11: LONGEST_STOPPIE_DIST
- 12: LONGEST_2WHEEL_DIST
Cash:
- 13: WEAPON_BUDGET
- 14: FASHION_BUDGET
- 15: PROPERTY_BUDGET
- 16: SPRAYING_BUDGET
Times:
- 17: LONGEST_WHEELIE_TIME
- 18: LONGEST_STOPPIE_TIME
- 19: LONGEST_2WHEEL_TIME
- 20: FOOD_BUDGET
Body:
- 21: FAT
- 22: STAMINA
- 23: BODY_MUSCLE
- 24: MAX_HEALTH
- 25: SEX_APPEAL
- 26: DIST_SWIMMING
- 27: DIST_CYCLE
- 28: DIST_TREADMILL
- 29: DIST_EXCERSISE_BIKE
- 30: TATTOO_BUDGET
- 31: HAIRDRESSING_BUDGET
- 33: PROSTITUTE_BUDGET
Gambling:
- 35: MONEY_SPENT_GAMBLING
- 36: MONEY_MADE_PIMPING
- 37: MONEY_WON_GAMBLING
- 38: BIGGEST_GAMBLING_WIN
- 39: BIGGEST_GAMBLING_LOSS
- 40: LARGEST_BURGLARY_SWAG
- 41: MONEY_MADE_BURGLARY
- 44: LONGEST_TREADMILL_TIME
- 45: LONGEST_EXCERSISE_BIKE_TIME
- 46: HEAVIEST_WEIGHT_BENCH_PRESS
- 47: HEAVIEST_WEIGHT_DUMBELLS
- 48: BEST_TIME_HOTRING
- 49: BEST_TIME_BMX
- 51: LONGEST_CHASE_TIME
- 52: LAST_CHASE_TIME
- 53: WAGE_BILL
- 54: STRIP_CLUB_BUDGET
- 55: CAR_MOD_BUDGET
- 56: TIME_SPENT_SHOPPING
- 62: TOTAL_SHOPPING_BUDGET
- 63: TIME_SPENT_UNDERWATER
Respect:
- 64: RESPECT_TOTAL
- 65: RESPECT_GIRLFRIEND
- 66: RESPECT_CLOTHES
- 67: RESPECT_FITNESS
- 68: RESPECT
Weapon skills:
Note: see Weapon skill levels for the values that advance weapon skills.
- 69: WEAPONTYPE_PISTOL_SKILL
- 70: WEAPONTYPE_PISTOL_SILENCED_SKILL
- 71: WEAPONTYPE_DESERT_EAGLE_SKILL
- 72: WEAPONTYPE_SHOTGUN_SKILL
- 73: WEAPONTYPE_SAWNOFF_SHOTGUN_SKILL
- 74: WEAPONTYPE_SPAS12_SHOTGUN_SKILL
- 75: WEAPONTYPE_MICRO_UZI_SKILL
- 76: WEAPONTYPE_MP5_SKILL
- 77: WEAPONTYPE_AK47_SKILL
- 78: WEAPONTYPE_M4_SKILL
- 79: WEAPONTYPE_SNIPERRIFLE_SKILL
- 80: SEX_APPEAL_CLOTHES
- 81: GAMBLING
- 120: PEOPLE_KILLED_BY_OTHERS
- 121: PEOPLE_KILLED_BY_PLAYER
- 122: CARS_DESTROYED
- 123: BOATS_DESTROYED
- 124: HELICOPTORS_DESTROYED
- 125: PROPERTY_DESTROYED
- 126: ROUNDS_FIRED
- 127: EXPLOSIVES_USED
- 128: BULLETS_HIT
- 129: TYRES_POPPED
- 130: HEADS_POPPED
- 131: WANTED_STARS_ATTAINED
- 132: WANTED_STARS_EVADED
- 133: TIMES_ARRESTED
- 134: DAYS_PASSED
- 135: TIMES_DIED
- 136: TIMES_SAVED
- 137: TIMES_CHEATED
- 138: SPRAYINGS
- 139: MAX_JUMP_DISTANCE
- 140: MAX_JUMP_HEIGHT
- 141: MAX_JUMP_FLIPS
- 142: MAX_JUMP_SPINS
- 143: BEST_STUNT
- 144: UNIQUE_JUMPS_FOUND
- 145: UNIQUE_JUMPS_DONE
- 146: MISSIONS_ATTEMPTED
- 147: MISSIONS_PASSED
- 148: TOTAL_MISSIONS
- 149: TAXI_MONEY_MADE
- 150: PASSENGERS_DELIVERED_IN_TAXI
- 151: LIVES_SAVED
- 152: CRIMINALS_CAUGHT
- 153: FIRES_EXTINGUISHED
- 154: PIZZAS_DELIVERED
- 155: ASSASSINATIONS
- 156: LATEST_DANCE_SCORE
- 157: VIGILANTE_LEVEL
- 158: AMBULANCE_LEVEL
- 159: FIREFIGHTER_LEVEL
- 160: DRIVING_SKILL
- 161: TRUCK_MISSIONS_PASSED
- 162: TRUCK_MONEY_MADE
- 163: RECRUITED_GANG_MEMBERS_KILLED
- 164: ARMOUR
- 165: ENERGY
- 166: PHOTOS_TAKEN
- 167: KILL_FRENZIES_ATTEMPTED
- 168: KILL_FRENZIES_PASSED
- 169: FLIGHT_TIME
- 170: TIMES_DROWNED
- 171: NUM_GIRLS_PIMPED
- 172: BEST_POSITION_HOTRING
- 173: FLIGHT_TIME_JETPACK
- 174: SHOOTING_RANGE_SCORE
- 175: VALET_CARS_PARKED
- 176: KILLS_SINCE_LAST_CHECKPOINT
- 177: TOTAL_LEGITIMATE_KILLS
- 178: BLOODRING_KILLS
- 179: BLOODRING_TIME
- 180: NO_MORE_HURRICANES
- 181: CITIES_PASSED
- 182: POLICE_BRIBES
- 183: CARS_STOLEN
- 184: CURRENT_GIRLFRIENDS
- 185: BAD_DATES
- 186: GIRLS_DATED
- 187: TIMES_SCORED_WITH_GIRL
- 188: DATES
- 189: GIRLS_DUMPED
- 190: TIMES_VISITED_PROSTITUTE
- 191: HOUSES_BURGLED
- 192: SAFES_CRACKED
- 194: STOLEN_ITEMS_SOLD
- 195: EIGHT_BALLS_IN_POOL
- 196: WINS_IN_POOL
- 197: LOSSES_IN_POOL
- 198: VISITS_TO_GYM
- 200: MEALS_EATEN
- 225: UNDERWATER_STAMINA
- 229: BIKE_SKILL
- 230: CYCLE_SKILL
- value: the new value of the stat. It must be between 0 and 1000.
Returns
Returns true if the statistic was changed succesfully. Returns false if an invalid player is specified, if the stat ID/value is out of acceptable range or if the FAT or BODY_MUSCLE stats are used on non-CJ players.
Examples
This example allows a player to type the command 'beefcake' to change his player's BODY_MUSCLE stat (#23) to the maximum value of 1000. This will result in him looking really muscular.
function changeBodyStrength(thePlayer, commandName) -- Output whether the setPlayerStat was successful in changing the BODY_MUSCLE STAT if setPedStat(thePlayer, 23, 1000) then outputChatBox("Your player looks really muscular") else outputChatBox("Failed to make your player look muscular.") end end addCommandHandler("beefcake", changeBodyStrength)
This example adds a /upgradeskills command to give the player who types it the maximum skill with every weapon and maximum health.
--[[ Skills to upgrade: 24 = Max Player Health 69 = Weapon Type Pistol Skill 70 = Weapon Type Pistol Silenced Skill 71 = Weapon Type Desert Eagle Skill 72 = Weapon Type Shotgun Skill 73 = Weapon Type Sawn off Shotgun Skill 74 = Weapon Type Spas 12 Shotgun Skill 76 = Weapon Type MP5 Skill 77 = Weapon Type AK47 Skill 78 = Weapon Type M4 Skill 79 = Weapon Type Sniper Rifle Skill --]] addCommandHandler("upgradeskills", function(thePlayer) -- Set every stat to 1000 (the maximum value) for _, stat in ipairs({ 24, 69, 70, 71, 72, 73, 74, 76, 77, 78, 79 }) do setPedStat(thePlayer, stat, 1000) outputChatBox("Your game stats upgraded to maximum!", thePlayer, 0, 255, 0, false) end -- Set player health to the maximum, as changing the stat keeps the current one if (isPedDead (thePlayer) ~= true) then setElementHealth(thePlayer, 100 + (getPedStat(ped, 24) - 569) / 4.31 return math.max(1, maxhealth)) -- Tell the player what we did outputChatBox("And your health upgraded to maximum!", thePlayer, 0, 255, 0, false) else outputChatBox("Your health can't be restored because you are already dead!", thePlayer, 0, 255, 0, false) end end)
See Also
- addPedClothes
- getPedClothes
- removePedClothes
- createPed
- getPedAmmoInClip
- getPedArmor
- getPedFightingStyle
- getPedOccupiedVehicle
- getPedOccupiedVehicleSeat
- getPedStat
- getPedTarget
- getPedTotalAmmo
- getPedWalkingStyle
- getPedWeapon
- getPedWeaponSlot
- getPedContactElement
- getValidPedModels
- isPedChoking
- isPedDead
- isPedDoingGangDriveby
- isPedDucked
- isPedHeadless
- isPedInVehicle
- isPedOnFire
- isPedOnGround
- isPedWearingJetpack
- killPed
- removePedFromVehicle
- setPedAnimation
- setPedAnimationProgress
- setPedAnimationSpeed
- setPedArmor
- setPedDoingGangDriveby
- setPedFightingStyle
- setPedHeadless
- setPedOnFire
- setPedStat
- setPedWalkingStyle
- setPedWeaponSlot
- warpPedIntoVehicle