Jump to content

Some bugs in lua files


Artdin

Recommended Posts

I decided to go fishing and noticed a strange distribution of the catch, checked the file and found a strange strings in ISFishingAction.lua in function ISFishingAction:new(character, tile, rod, lure, fishingUI)

o.attractNumber = 100;
    if SandboxVars.NatureAbundance == 1 then -- very poor
        o.attractNumber = 140;
    elseif SandboxVars.NatureAbundance == 2 then -- poor
        o.attractNumber = 120;
    elseif SandboxVars.NatureAbundance == 3 then -- abundant  
        o.attractNumber = 80;
    elseif SandboxVars.NatureAbundance == 4 then -- very abundant
        o.attractNumber = 60;
    end


-- simple fix

o.attractNumber = 100;
    if SandboxVars.NatureAbundance == 1 then -- very poor
        o.attractNumber = 140;
    elseif SandboxVars.NatureAbundance == 2 then -- poor
        o.attractNumber = 120;
    elseif SandboxVars.NatureAbundance == 4 then -- abundant  
        o.attractNumber = 80;
    elseif SandboxVars.NatureAbundance == 5 then -- very abundant
        o.attractNumber = 60;
    end

Based on the code, it turns out that the maximum chance of catching a fish will be at the level 4 of natural Abundance, and on the 5 level we will get a standard chance. just like a typo

 

 

There is also a problem with spliting soup on bowls  hunger is exhibited from the first-full hunger of the soup you can drink all three quarters of the soup and pour into the  bowls and get the original hunger

function MakeBowlOfSoup2_OnCreate(items, result, player)
    local addType = "Base.Pot"
    for i=0,items:size() - 1 do
        if items:get(i):getType() == "PotOfSoup" or items:get(i):getType() == "PotOfSoupRecipe" or items:get(i):getType() == "RicePan" or items:get(i):getType() == "PastaPan" or items:get(i):getType() == "PastaPot"or items:get(i):getType() == "RicePot" or items:get(i):getType() == "WaterPotRice" then
            result:setBaseHunger(items:get(i):getBaseHunger() / 2);
            result:setHungChange(items:get(i):getBaseHunger() / 2); -- maybe copy/paste  simple fix getHungChange() 
            result:setThirstChange(items:get(i):getThirstChange() / 2);
            result:setBoredomChange(items:get(i):getBoredomChange() / 2);
            result:setUnhappyChange(items:get(i):getUnhappyChange() / 2);
            result:setCarbohydrates(items:get(i):getCarbohydrates() / 2);
            result:setLipids(items:get(i):getLipids() / 2);
            result:setProteins(items:get(i):getProteins() / 2);
            result:setCalories(items:get(i):getCalories() / 2);
            result:setTaintedWater(items:get(i):isTaintedWater())
            if string.contains(items:get(i):getType(), "Pan") then
                addType = "Base.Saucepan"
            end
        end
    end
    player:getInventory():AddItem(addType);
end

 

Same problem with all other split recipes.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...