-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathelevate-performance.lua
More file actions
74 lines (65 loc) · 2.97 KB
/
elevate-performance.lua
File metadata and controls
74 lines (65 loc) · 2.97 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
-- Adjust all entertainer performance skills of a single unit
-- by vjek
--[====[
elevate-performance
===============
Iterates through and sets all the musical instrument, poetry, music, and dance
skills, for this unit, based on this units civ, to Legendary.
]====]
local utils = require 'utils'
unit = dfhack.gui.getSelectedUnit()
if unit.status.current_soul.performance_skills then
-- ---------------------------------------------------------------------------
-- clear out this units current musical instrument skills
unit.status.current_soul.performance_skills.musical_instruments:resize(0)
-- find all instruments for this units civ
civ_instrument_list={}
for i=0, #df.global.world.raws.itemdefs.instruments-1 do
if df.global.world.raws.itemdefs.instruments[i].source_enid == unit.civ_id then
-- print("instrument: "..df.global.world.raws.itemdefs.instruments[i].name)
utils.insert_or_update(unit.status.current_soul.performance_skills.musical_instruments, { new = true, id = df.global.world.raws.itemdefs.instruments[i].subtype, rating = 20 }, 'id')
end
end
-- ---------------------------------------------------------------------------
-- clear out this units current poem skills
unit.status.current_soul.performance_skills.poetic_forms:resize(0)
-- find all poems for this units civ
if #df.global.world.poetic_forms.all then
civ_poem_list = {}
vec=df.global.world.poetic_forms.all
for k=0,#vec-1 do
if unit.civ_id == vec[k].originating_entity then
-- print("poem:"..dfhack.TranslateName(vec[k].name,true))
utils.insert_or_update(unit.status.current_soul.performance_skills.poetic_forms, { new = true, id = vec[k].id, rating = 20 }, 'id')
end
end
end
-- ---------------------------------------------------------------------------
-- clear out this units current music skills
unit.status.current_soul.performance_skills.musical_forms:resize(0)
-- find all musics for this units civ
if #df.global.world.musical_forms.all then
civ_music_list = {}
vec=df.global.world.musical_forms.all
for k=0,#vec-1 do
if unit.civ_id == vec[k].originating_entity then
-- print("music:"..dfhack.TranslateName(vec[k].name,true))
utils.insert_or_update(unit.status.current_soul.performance_skills.musical_forms, { new = true, id = vec[k].id, rating = 20 }, 'id')
end
end
end
-- ---------------------------------------------------------------------------
-- clear out this units current dance skills
unit.status.current_soul.performance_skills.dance_forms:resize(0)
-- find all dances for this units civ
if #df.global.world.dance_forms.all then
civ_dance_list = {}
vec=df.global.world.dance_forms.all
for k=0,#vec-1 do
if unit.civ_id == vec[k].originating_entity then
-- print("dance:"..dfhack.TranslateName(vec[k].name,true))
utils.insert_or_update(unit.status.current_soul.performance_skills.dance_forms, { new = true, id = vec[k].id, rating = 20 }, 'id')
end
end
end
end