Skip to content
This repository was archived by the owner on May 22, 2025. It is now read-only.

Commit 589566a

Browse files
minor refactor + rebalance
1 parent 845ed80 commit 589566a

File tree

16 files changed

+32
-17
lines changed

16 files changed

+32
-17
lines changed

code/__HELPERS/mobs.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -345,7 +345,7 @@ GLOBAL_LIST_EMPTY(species_list)
345345
if(!(timed_action_flags & IGNORE_SLOWDOWNS))
346346
delay *= user.action_speed_modifier * user.do_after_coefficent() //yogs: darkspawn
347347

348-
if(skill_check && user.mind)
348+
if(skill_check && user.mind && !(timed_action_flags & IGNORE_SKILL_DELAY))
349349
delay *= (12 - user.get_skill(skill_check)) / 10
350350

351351
var/datum/progressbar/progbar

code/_onclick/hud/screen_objects.dm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@
152152
data["skills"] = skill_data
153153
data["skill_points"] = user.mind.skill_points
154154
data["allocated_points"] = allocated_points
155-
data["exceptional_skill"] = HAS_TRAIT(user, TRAIT_EXCEPTIONAL_SKILL)
155+
data["exceptional_skill"] = HAS_MIND_TRAIT(user, TRAIT_EXCEPTIONAL_SKILL)
156156
return data
157157

158158
/atom/movable/screen/skill_menu/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state)
@@ -190,7 +190,7 @@
190190
return TRUE
191191
if(allocated_points + params["amount"] < 0)
192192
return TRUE
193-
if(allocated_skills[params["skill"]] + params["amount"] + user.get_skill(params["skill"]) > (4 + HAS_TRAIT(user, TRAIT_EXCEPTIONAL_SKILL)))
193+
if(allocated_skills[params["skill"]] + params["amount"] + user.get_skill(params["skill"]) > (4 + HAS_MIND_TRAIT(user, TRAIT_EXCEPTIONAL_SKILL)))
194194
return TRUE
195195
if(allocated_skills[params["skill"]] + params["amount"] < 0)
196196
return TRUE

code/datums/components/crafting/crafting.dm

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -169,9 +169,10 @@
169169
if(!check_skills(a, R))
170170
return ", inadequate skills."
171171
var/timer = R.time
172+
var/mob/user_mob
172173
if(ismob(a))
173-
var/mob/mob = a
174-
timer *= (10 - (mob.get_skill(SKILL_MECHANICAL) + HAS_TRAIT(mob, TRAIT_CRAFTY)*2)) / 10
174+
user_mob = a
175+
timer *= (10 - (user_mob.get_skill(SKILL_MECHANICAL) + HAS_TRAIT(user_mob, TRAIT_CRAFTY)*2)) / 10
175176
if(!do_after(a, timer, a, IGNORE_SKILL_DELAY, skill_check = SKILL_MECHANICAL))
176177
return "."
177178
contents = get_surroundings(a, R.blacklist) // Double checking since items could no longer be there after the do_after().
@@ -182,6 +183,9 @@
182183
var/list/parts = del_reqs(R, a)
183184
var/atom/movable/I = new R.result(get_turf(a.loc))
184185
I.CheckParts(parts, R)
186+
if(user_mob && R.skill_requirements.len)
187+
for(var/skill in R.skill_requirements)
188+
user_mob.add_exp(skill, R.skill_requirements[skill] * 10)
185189
if(send_feedback)
186190
SSblackbox.record_feedback("tally", "object_crafted", 1, I.type)
187191
return I

code/datums/mind.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -290,7 +290,7 @@
290290
return
291291

292292
traitor_mob.add_skill_points(EXP_LOW) // one extra skill point
293-
ADD_TRAIT(traitor_mob, TRAIT_EXCEPTIONAL_SKILL, type)
293+
ADD_TRAIT(src, TRAIT_EXCEPTIONAL_SKILL, type)
294294

295295
var/list/all_contents = traitor_mob.get_all_contents()
296296
var/obj/item/modular_computer/PDA = locate() in all_contents

code/modules/antagonists/brother/brother.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
qdel(W)
3636

3737
brother.add_skill_points(EXP_HIGH) // extra skills
38-
ADD_TRAIT(brother, TRAIT_EXCEPTIONAL_SKILL, type)
38+
ADD_TRAIT(owner, TRAIT_EXCEPTIONAL_SKILL, type)
3939

4040
if(istype(brother))
4141
var/obj/item/storage/box/bloodbrother/T = new()

code/modules/antagonists/ert/ert.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -262,7 +262,7 @@
262262
return
263263
H.equipOutfit(outfit)
264264
H.add_skill_points(EXP_GENIUS) // 5 skill points to allocate, you can put it all into fitness or specialize as a medic or pilot
265-
ADD_TRAIT(H, TRAIT_EXCEPTIONAL_SKILL, type) // allowed to allocate 5 points into a single skill
265+
ADD_TRAIT(owner, TRAIT_EXCEPTIONAL_SKILL, type) // allowed to allocate 5 points into a single skill
266266

267267
/datum/antagonist/ert/greet()
268268
if(!ert_team)

code/modules/antagonists/nukeop/nukeop.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939

4040
H.adjust_skill(SKILL_FITNESS, EXP_MID, max_skill = EXP_GENIUS) // base amount of fitness skill all operatives need to have
4141
H.add_skill_points(EXP_GENIUS) // 5 skill points to allocate, you can put it all into fitness or specialize as a medic or pilot
42-
ADD_TRAIT(H, TRAIT_EXCEPTIONAL_SKILL, ROLE_OPERATIVE) // allowed to allocate 5 points into a single skill
42+
ADD_TRAIT(owner, TRAIT_EXCEPTIONAL_SKILL, ROLE_OPERATIVE) // allowed to allocate 5 points into a single skill
4343
return TRUE
4444

4545
/datum/antagonist/nukeop/greet()

code/modules/awaymissions/corpse.dm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -216,8 +216,8 @@
216216
for(var/skill in base_skills)
217217
H.adjust_skill(skill, base_skills[skill])
218218
H.add_skill_points(skill_points)
219-
if(exceptional_skill)
220-
ADD_TRAIT(H, TRAIT_EXCEPTIONAL_SKILL, assignedrole)
219+
if(exceptional_skill && H.mind)
220+
ADD_TRAIT(H.mind, TRAIT_EXCEPTIONAL_SKILL, assignedrole)
221221
H.update_hair()
222222
H.update_body()
223223
if(outfit)

code/modules/jobs/job_types/bartender.dm

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,15 @@
2020
display_order = JOB_DISPLAY_ORDER_BARTENDER
2121
minimal_character_age = 21 //I shouldn't have to explain this one
2222

23+
base_skills = list(
24+
SKILL_PHYSIOLOGY = EXP_NONE,
25+
SKILL_MECHANICAL = EXP_NONE,
26+
SKILL_TECHNICAL = EXP_NONE,
27+
SKILL_SCIENCE = EXP_NONE,
28+
SKILL_FITNESS = EXP_MID,
29+
)
30+
skill_points = 2
31+
2332
departments_list = list(
2433
/datum/job_department/service,
2534
)

code/modules/jobs/job_types/botanist.dm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
SKILL_MECHANICAL = EXP_NONE,
2525
SKILL_TECHNICAL = EXP_NONE,
2626
SKILL_SCIENCE = EXP_MID,
27-
SKILL_FITNESS = EXP_LOW,
27+
SKILL_FITNESS = EXP_NONE,
2828
)
2929
skill_points = 3
3030

0 commit comments

Comments
 (0)