Starbound

Starbound

Weapon Retrofitting Station
Psyny  [utvikler] 18. sep. 2018 kl. 18.24
Feedback
Please give your feedback here.
< >
Viser 11 av 1 kommentarer
Tenet 28. des. 2022 kl. 12.54 
function levelJackpot() -- determines if final weapon increases a tier
--randomly decides if final weapons's level should rise
local level = 0

-- which base weapon has higher level? use it
if weapon1.descriptor.parameters.level > weapon2.descriptor.parameters.level then
level = weapon1.descriptor.parameters.level
else
level = weapon2.descriptor.parameters.level
end

-- init the random functions
local seed = sb.makeRandomSource():randu64()
math.randomseed(seed)

-- get level difference between W1 and W2
local levelDif = math.abs(math.max(weapon1.descriptor.parameters.level,0) - math.max(weapon2.descriptor.parameters.level,0))



finalWeapon.parameters.primaryAbility.baseDps = (weapon1.descriptor.parameters.primaryAbility.baseDps + weapon2.descriptor.parameters.primaryAbility.baseDps)/2
finalWeapon.parameters.primaryAbility.fireTime = (weapon1.descriptor.parameters.primaryAbility.fireTime + weapon2.descriptor.parameters.primaryAbility.fireTime)/2
finalWeapon.parameters.primaryAbility.energyUsage = (weapon1.descriptor.parameters.primaryAbility.energyUsage + weapon2.descriptor.parameters.primaryAbility.energyUsage)/2

if math.random(0,100) < 50 then -- random number is jackpot
finalWeapon.parameters.primaryAbility.baseDps = finalWeapon.parameters.primaryAbility.baseDps*1.1
end

if math.random(0,100) < 50 then -- random number is jackpot
finalWeapon.parameters.primaryAbility.baseDps = finalWeapon.parameters.primaryAbility.baseDps*0.9
end

if math.random(0,100) < 50 then -- random number is jackpot
finalWeapon.parameters.primaryAbility.fireTime = finalWeapon.parameters.primaryAbility.fireTime*1.1
end

if math.random(0,100) < 50 then -- random number is jackpot
finalWeapon.parameters.primaryAbility.fireTime = finalWeapon.parameters.primaryAbility.fireTime*0.9
end
if math.random(0,100) < 50 then -- random number is jackpot
finalWeapon.parameters.primaryAbility.energyUsage = finalWeapon.parameters.primaryAbility.energyUsage*1.1
end

if math.random(0,100) < 50 then -- random number is jackpot
finalWeapon.parameters.primaryAbility.energyUsage = finalWeapon.parameters.primaryAbility.energyUsage*0.9
end

if math.random(0,100) < 5 then -- random number is jackpot
finalWeapon.parameters.primaryAbility.projectileCount = finalWeapon.parameters.primaryAbility.projectileCount+1
end

local chance = math.max(10 - levelDif, 1)
for i=0, 10 do
math.random()
end
if math.random(0,100) < chance then -- random number is jackpot
finalWeapon.parameters.level = level + 1
else
finalWeapon.parameters.level = level
end




end

yep. that is suggestion but idk how to make it workable
< >
Viser 11 av 1 kommentarer
Per side: 1530 50