123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- # exp_gain
- !2022/08/07
- ! gosub that exp gain is run through to be able to modify exp gain by conditions of the player character
- ! use: gs 'exp_gain', 'skill', exp
- ! example: gs 'exp_gain', 'photoskl', rand(1,2)
- ! example: gs 'exp_gain', $ARGS[2], rand(3,5)
- if ARGS[1] > 0:
- !! Prevents EXP gain for stren_plus if its 50 or higher and Sveta ISNT using steroids
- if $ARGS[0] = 'stren_plus' and stren_plus_lvl >= 50 and drugVars['steroids_dose'] = 0:
- exit
- end
- !! Traits:
- !! - New Again
- if pcs_traits['new_again'] > 0: ARGS[1] *= 2
- !! Stats:
- !! - Exhaustion (lack of sleep and stamina)
- if pcs_stam <= 0:
- if pcs_condition['lack_of_sleep'] >= 20:
- ARGS[1] /= 8
- elseif pcs_condition['lack_of_sleep'] >= 10:
- ARGS[1] /= 4
- elseif pcs_condition['lack_of_sleep'] >= 5:
- ARGS[1] = ARGS[1] * 3 / 8
- elseif pcs_condition['lack_of_sleep'] >= 2:
- ARGS[1] = ARGS[1] * 9 / 20
- else
- ARGS[1] /= 2
- end
- elseif pcs_stam < stammax / 5:
- if pcs_condition['lack_of_sleep'] >= 20:
- ARGS[1] = ARGS[1] * 3 / 16
- elseif pcs_condition['lack_of_sleep'] >= 10:
- ARGS[1] = ARGS[1] * 3 / 8
- elseif pcs_condition['lack_of_sleep'] >= 5:
- ARGS[1] = ARGS[1] * 9 / 16
- elseif pcs_condition['lack_of_sleep'] >= 2 and ARGS[1] > 1:
- ARGS[1] = ARGS[1] * 27 / 40
- elseif ARGS[1] > 1:
- ARGS[1] = ARGS[1] * 3 / 4
- end
- else
- if pcs_condition['lack_of_sleep'] >= 20:
- ARGS[1] /= 4
- elseif pcs_condition['lack_of_sleep'] >= 10:
- ARGS[1] /= 2
- elseif pcs_condition['lack_of_sleep'] >= 5:
- ARGS[1] = ARGS[1] * 3 / 4
- elseif pcs_condition['lack_of_sleep'] >= 2 and ARGS[1] > 1:
- ARGS[1] = ARGS[1] * 9 / 10
- end
- end
- !! EXP Assignment
- dynamic "<<$ARGS[0]>>_exp += <<ARGS[1]>>"
- end
- --- exp_gain ---------------------------------
|