SetPedStat
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.
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 --]] function getPedMaxHealth(ped) -- Output an error and stop executing the function if the argument is not valid assert(isElement(ped) and (getElementType(ped) == "ped" or getElementType(ped) == "player"), "Bad argument @ 'getPedMaxHealth' [Expected ped/player at argument 1, got " .. tostring(ped) .. "]") -- Grab his player health stat. local stat = getPedStat(ped, 24) -- Do a linear interpolation to get how many health a ped can have. -- Assumes: 100 health = 569 stat, 200 health = 1000 stat. local maxhealth = 100 + (stat - 569) / 4.31 -- Return the max health. Make sure it can't be below 1 return math.max(1, maxhealth) end 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) == false) then setElementHealth(thePlayer, getPedMaxHealth(thePlayer)) -- 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