Update 5 files

- /data/scripts/lib/inventoryitemprice.lua
- /data/scripts/lib/galaxy.lua
- /data/scripts/lib/turretingredients.lua
- /data/scripts/lib/weapongenerator.lua
- /data/scripts/lib/turretgenerator.lua
This commit is contained in:
Alex
2023-08-30 18:21:10 +00:00
parent f7d95dab9d
commit c232b70341
5 changed files with 62 additions and 53 deletions

View File

@@ -7,15 +7,15 @@ scales[WeaponType.SmartCannon] = {
{from = 50, to = 52, size = 4.0, usedSlots = 5},
}
scales[WeaponType.HeavyCannon] = { -- TODO уточнить размеры
scales[WeaponType.HeavyCannon] = {
{from = 0, to = 28, size = 3.0, usedSlots = 4},
{from = 29, to = 38, size = 4.0, usedSlots = 5},
{from = 39, to = 49, size = 5.0, usedSlots = 6},
--dummy for cooaxial, add 1 to size and level
{from = 50, to = 52, size = 5, usedSlots = 6},
{from = 50, to = 52, size = 6, usedSlots = 6},
}
scales[WeaponType.Diffuser] = {-- TODO проверить возможность спавна с определенной дистанции, Уточнить размеры
scales[WeaponType.Diffuser] = {
{from = 0, to = 46, size = 1.0, usedSlots = 2},
{from = 47, to = 50, size = 2.0, usedSlots = 4},
--dummy for cooaxial, add 1 to size and level
@@ -42,8 +42,6 @@ if GameVersion() >= Version(0, 31, 0) then
{specialty = Specialty.HighDamage, probability = 0.2},
{specialty = Specialty.HighFireRate, probability = 0.3},
{specialty = Specialty.HighRange, probability = 0.7},
-- {specialty = Specialty.HighHullDamage, probability = 0.5},
-- {specialty = Specialty.LessCoolingTime, probability = 0.4},
}
else
possibleSpecialties[WeaponType.SmartCannon] = {
@@ -60,9 +58,6 @@ if GameVersion() >= Version(0, 31, 0) then
{specialty = Specialty.HighDamage, probability = 0.2},
{specialty = Specialty.HighRange, probability = 0.35},
{specialty = Specialty.HighFireRate, probability = 0.3},
-- {specialty = Specialty.HighHullDamage, probability = 0.2},
-- {specialty = Specialty.HighShieldDamage, probability = 0.2},
-- {specialty = Specialty.LessCoolingTime, probability = 0.2}
}
else
possibleSpecialties[WeaponType.HeavyCannon] = {
@@ -145,12 +140,16 @@ function TurretGenerator.generateSmartCannonTurret(rand, dps, tech, material, ra
result.slotType = TurretSlotType.Armed
result:updateStaticStats()
local name = "SmartCannon /* weapon name*/"%_T
local name = "Smart-Cannon /* weapon name*/"%_T
local specType = 1
if specType > 0 then
name = "Ionized SmartCannon /* weapon name*/"%_T
local specType = rand:getInt(0, 2)
if specType == 1 then
name = "Ionized Smart-Cannon /* weapon name*/"%_T
weapon.shieldPenetration = 1
elseif specType == 2 then
name = "Pierce Smart-Cannon /* weapon name*/"%_T
result.damageType = DamageType.Plasma
weapon.damage = weapon.damage * 0.9
end
local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Physical)
@@ -169,7 +168,7 @@ function TurretGenerator.generateHeavyCannonTurret(rand, dps, tech, material, ra
-- generate turret
local requiredCrew = TurretGenerator.dpsToRequiredCrew(dps)
local crew = Crew()
crew:add(requiredCrew*2, CrewMan(CrewProfessionType.Gunner))
crew:add(requiredCrew, CrewMan(CrewProfessionType.Gunner))
crew:add(requiredCrew, CrewMan(CrewProfessionType.Repair))
result.crew = crew
@@ -194,13 +193,22 @@ function TurretGenerator.generateHeavyCannonTurret(rand, dps, tech, material, ra
local name = "Heavy Cannon /* weapon name*/"%_T
local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Physical)
local Pen = rand:getInt(0, rarity.value)
if Pen > 0 then
weapon.blockPenetration = Pen
name = "Cumulative Heavy Cannon /* weapon name*/"%_T
outerAdjective = "Cumulative "%_T
end
if result.size >= 4 then
name = "Mons Meg /* weapon name*/"%_T
end
if result.size >= 5 then
name = "Dulle Griet /* weapon name*/"%_T
end
local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Physical)
result.title = Format("%1%%2%%3%%4%%5%%6%%7% /* [outer-adjective][barrel][coax][dmg-adjective][multishot][name][serial] */"%_T, outerAdjective, barrel, coax, dmgAdjective, multishot, name, serial)
return result
@@ -286,6 +294,8 @@ end
generatorFunction[WeaponType.Hookgun] = TurretGenerator.generateHookgunTurret
function TurretGenerator.generateHiveLauncherTurret(rand, dps, tech, material, rarity)
local result = TurretTemplate()
@@ -326,7 +336,10 @@ function TurretGenerator.generateHiveLauncherTurret(rand, dps, tech, material, r
result.slotType = TurretSlotType.Armed
result:updateStaticStats()
local name = "HiveLauncher /* weapon name*/"%_T
local name = "Hive-Launcher /* weapon name*/"%_T
if weapon.shotsFired > 20 then
name = "Swarm-Launcher /* weapon name*/"%_T
end
local dmgAdjective, outerAdjective, barrel, multishot, coax, serial = makeTitleParts(rand, specialties, result, DamageType.Physical)
multishot = ""%_T