Skip to content

Commit c174717

Browse files
committed
fixed architect go_back, added citadel upgrade menu, fixed farm sell foodMax-decrease
1 parent 5479579 commit c174717

File tree

7 files changed

+177
-14
lines changed

7 files changed

+177
-14
lines changed
964 Bytes
Binary file not shown.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
"architect_go_back"
2+
{
3+
"BaseClass" "ability_datadriven"
4+
"AbilityBehavior" "DOTA_ABILITY_BEHAVIOR_NO_TARGET"
5+
"AbilityManaCost" "0"
6+
"AbilityTextureName" "kodotag_return"
7+
"AbilityCastRange" "250"
8+
"AbilityCastPoint" "0"
9+
"AbilityCooldown" "0"
10+
"MaxLevel" "1"
11+
12+
13+
14+
"OnSpellStart"
15+
{
16+
"RemoveAbility"
17+
{
18+
"Target" "CASTER"
19+
"AbilityName" "build_barricade"
20+
}
21+
"RemoveAbility"
22+
{
23+
"Target" "CASTER"
24+
"AbilityName" "build_castle"
25+
}
26+
"RemoveAbility"
27+
{
28+
"Target" "CASTER"
29+
"AbilityName" "build_basic_tower"
30+
}
31+
"RemoveAbility"
32+
{
33+
"Target" "CASTER"
34+
"AbilityName" "build_farm"
35+
}
36+
"RemoveAbility"
37+
{
38+
"Target" "CASTER"
39+
"AbilityName" "architect_go_back"
40+
}
41+
42+
"RunScript"
43+
{
44+
"ScriptFile" "scripts/vscripts/util.lua"
45+
"Function" "addAbility"
46+
"Ability" "build,repair,chop_wood"
47+
}
48+
}
49+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
"citadel_go_back"
2+
{
3+
"BaseClass" "ability_datadriven"
4+
"AbilityBehavior" "DOTA_ABILITY_BEHAVIOR_NO_TARGET"
5+
"AbilityManaCost" "0"
6+
"AbilityTextureName" "kodotag_return"
7+
"AbilityCastRange" "250"
8+
"AbilityCastPoint" "0"
9+
"AbilityCooldown" "0"
10+
"MaxLevel" "1"
11+
12+
13+
14+
"OnSpellStart"
15+
{
16+
"RemoveAbility"
17+
{
18+
"Target" "CASTER"
19+
"AbilityName" "upgrade_move_speed"
20+
}
21+
"RemoveAbility"
22+
{
23+
"Target" "CASTER"
24+
"AbilityName" "upgrade_tower_attack"
25+
}
26+
"RemoveAbility"
27+
{
28+
"Target" "CASTER"
29+
"AbilityName" "upgrade_tower_range"
30+
}
31+
"RemoveAbility"
32+
{
33+
"Target" "CASTER"
34+
"AbilityName" "upgrade_tower_damage"
35+
}
36+
"RemoveAbility"
37+
{
38+
"Target" "CASTER"
39+
"AbilityName" "citadel_go_back"
40+
}
41+
42+
"RunScript"
43+
{
44+
"ScriptFile" "scripts/vscripts/util.lua"
45+
"Function" "addAbility"
46+
"Ability" "create_worker,create_architect,upgrade,sell_building,create_rallypoint"
47+
}
48+
}
49+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
"upgrade"
2+
{
3+
"BaseClass" "ability_datadriven"
4+
"AbilityBehavior" "DOTA_ABILITY_BEHAVIOR_NO_TARGET"
5+
"AbilityManaCost" "0"
6+
"AbilityTextureName" "kodotag_upgrade"
7+
"AbilityCastRange" "250"
8+
"AbilityCastPoint" "0"
9+
"AbilityCooldown" "0"
10+
"MaxLevel" "1"
11+
12+
"OnSpellStart"
13+
{
14+
"RemoveAbility"
15+
{
16+
"Target" "CASTER"
17+
"AbilityName" "create_worker"
18+
}
19+
"RemoveAbility"
20+
{
21+
"Target" "CASTER"
22+
"AbilityName" "create_architect"
23+
}
24+
"RemoveAbility"
25+
{
26+
"Target" "CASTER"
27+
"AbilityName" "upgrade"
28+
}
29+
"RemoveAbility"
30+
{
31+
"Target" "CASTER"
32+
"AbilityName" "sell_building"
33+
}
34+
"RemoveAbility"
35+
{
36+
"Target" "CASTER"
37+
"AbilityName" "create_rallypoint"
38+
}
39+
40+
"RunScript"
41+
{
42+
"ScriptFile" "scripts/vscripts/util.lua"
43+
"Function" "addAbility"
44+
"Ability" "upgrade_move_speed,upgrade_tower_attack,upgrade_tower_range,upgrade_tower_damage,citadel_go_back"
45+
}
46+
47+
48+
49+
}
50+
51+
52+
}

game/dota_addons/kodotag/scripts/npc/units/castle_2.txt

+5-5
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@
99

1010
// Abilities
1111
//----------------------------------------------------------------
12-
"AbilityLayout" "8"
12+
"AbilityLayout" "5"
1313
"Ability1" "create_worker" // Ability 1.
1414
"Ability2" "create_architect" // Ability 2.
15-
"Ability3" "upgrade_move_speed" // Ability 3.
16-
"Ability4" "upgrade_tower_attack" // Ability 4.
17-
"Ability5" "upgrade_tower_range" // Ability 5.
18-
"Ability6" "upgrade_tower_damage" // Ability 6 - Extra.
15+
"Ability3" "upgrade" // Ability 3.
16+
"Ability4" "" // Ability 4.
17+
"Ability5" "" // Ability 5.
18+
"Ability6" "" // Ability 6 - Extra.
1919
"Ability7" "sell_building" // Ability 7 - Extra.
2020
"Ability8" "create_rallypoint"
2121
"Ability9" "building_cleanup" // Ability 8 - Extra.

game/dota_addons/kodotag/scripts/vscripts/buildings.lua

+9
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,9 @@ function destroyBuilding(keys)
5454
end
5555
owner:SetGold(owner:GetGold()+keys.caster.goldInvestReturn,false)
5656
owner.wood=owner.wood+keys.caster.woodInvestReturn
57+
if(keys.caster:GetUnitName() == "farm") then
58+
decreaseMaxFood(keys.caster,6)
59+
end
5760
keys.caster:RemoveBuilding(keys.caster._hullRadius,true)
5861
end
5962

@@ -132,6 +135,12 @@ function increaseMaxFood(building, amount)
132135
owner.foodMax=owner.foodMax+amount
133136
end
134137

138+
function decreaseMaxFood(building, amount)
139+
local owner=getAbsoluteParent(building:GetOwnerEntity())
140+
building.foodIncrease=0--(building.foodIncrease or 0)+amount
141+
owner.foodMax=owner.foodMax-amount
142+
end
143+
135144
function createRallypoint(keys)
136145
local rp
137146
local pos

game/dota_addons/kodotag/scripts/vscripts/util.lua

+13-9
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,10 @@ function addAbility(keys)
1818
return nil
1919
end
2020
for abilityName in string.gmatch(keys.Ability,"[%w_]+") do
21+
if(abilityName == "go_back" and not keys.caster:IsHero()) then
22+
abilityName = keys.caster:GetUnitName().."_"..abilityName
23+
print("Dette bör vare \"architect\": "..keys.caster:GetUnitName())
24+
end
2125
keys.caster:AddAbility(abilityName)
2226
keys.caster:FindAbilityByName(abilityName):UpgradeAbility()
2327
end
@@ -77,10 +81,10 @@ function distance(eA,eB)
7781
end
7882

7983
function PrintSquare(v,size)
80-
DebugDrawLine(Vector(v.x-size,v.y+size,BH_Z), Vector(v.x+size,v.y+size,BH_Z), 255, 0, 0, false, 30)
81-
DebugDrawLine(Vector(v.x-size,v.y+size,BH_Z), Vector(v.x-size,v.y-size,BH_Z), 255, 0, 0, false, 30)
82-
DebugDrawLine(Vector(v.x-size,v.y-size,BH_Z), Vector(v.x+size,v.y-size,BH_Z), 255, 0, 0, false, 30)
83-
DebugDrawLine(Vector(v.x+size,v.y-size,BH_Z), Vector(v.x+size,v.y+size,BH_Z), 255, 0, 0, false, 30)
84+
DebugDrawLine(Vector(v.x-size,v.y+size,BH_Z), Vector(v.x+size,v.y+size,BH_Z), 255, 0, 0, false, 30)
85+
DebugDrawLine(Vector(v.x-size,v.y+size,BH_Z), Vector(v.x-size,v.y-size,BH_Z), 255, 0, 0, false, 30)
86+
DebugDrawLine(Vector(v.x-size,v.y-size,BH_Z), Vector(v.x+size,v.y-size,BH_Z), 255, 0, 0, false, 30)
87+
DebugDrawLine(Vector(v.x+size,v.y-size,BH_Z), Vector(v.x+size,v.y+size,BH_Z), 255, 0, 0, false, 30)
8488
end
8589

8690
function PrintCircle(v,radius)
@@ -115,12 +119,12 @@ function in_array(array,element)--someone make this work..
115119
end
116120
return true
117121
else]]
118-
for i=1,#array do
119-
if array[i]==element then
120-
return true
122+
for i=1,#array do
123+
if array[i]==element then
124+
return true
125+
end
121126
end
122-
end
123-
return false
127+
return false
124128
end
125129

126130
function PrintTable(t, indent, done)

0 commit comments

Comments
 (0)