Jump to content

Recommended Posts

In my deerclops horn mood i can't add to play animation with my creation its always play with different item default horn or pan flute depends what is in [inst:AddTag("flute")] or  [inst:AddTag("horn")]
not mine. When i wrote [inst:AddTag("rags")] nothing hapen's.

 

 

rags mean horn in my language:)

 

 

local Assets =
{
    Asset("ANIM", "anim/rags_build.zip"),
    Asset("ATLAS", "images/inventoryimages/rags.xml"),

local function onfinished(inst)
    inst:Remove()
end

local function TryAddFollower(leader, follower) -- no erors
    if leader.components.leader
       and follower.components.follower
       and follower:HasTag("beefalo") and not follower:HasTag("baby")
       and leader.components.leader:CountFollowers("beefalo") < TUNING.HORN_MAX_FOLLOWERS then
        leader.components.leader:AddFollower(follower)
        follower.components.follower:AddLoyaltyTime(TUNING.HORN_EFFECTIVE_TIME+math.random())
        if follower.components.combat and follower.components.combat.target and follower.components.combat.target == leader then
            follower.components.combat:SetTarget(nil)
        end
        follower:DoTaskInTime(math.random(), function() follower.sg:PushEvent("heardhorn", {musician = leader} )end)
    end
end -- !!


local function HearRags(inst, musician, instrument)  -- OK no errors
    if musician.components.leader then
        local herd = nil
        if inst:HasTag("beefalo") and not inst:HasTag("baby") and inst.components.herdmember then
            if inst.components.combat and inst.components.combat.target then
                inst.components.combat:GiveUp()
            end
            TryAddFollower(musician, inst)
            herd = inst.components.herdmember:GetHerd()
        end
        if herd and herd.components.herd then
            for k,v in pairs(herd.components.herd.members) do
                TryAddFollower(musician, k)
            end
        end
    end
end  -- OK



local function fn(Sim)
    local inst = CreateEntity()
    inst.entity:AddTransform()
    inst.entity:AddAnimState()
    
    inst:AddTag("flute")  -- !!!???
    
    MakeInventoryPhysics(inst)
    
    inst.AnimState:SetBank("horn")  
    inst.AnimState:SetBuild("rags_build")
    inst.AnimState:PlayAnimation("idle")  
    MakeInventoryPhysics(inst)  
    
    inst:AddComponent("inventoryitem")
    inst.components.inventoryitem.atlasname = "images/inventoryimages/rags.xml"

    inst:AddComponent("inspectable")
    
    inst:AddComponent("instrument")  
    inst.components.instrument.range = TUNING.HORN_RANGE  
    inst.components.instrument:SetOnHeardFn(HearRags)
    
    inst:AddComponent("tool")  
    inst.components.tool:SetAction(ACTIONS.PLAY)  
    
    
    inst:AddComponent("fuel") -- ok
    inst.components.fuel.fuelvalue = TUNING.MED_FUEL -- ok can burn :)

    return inst
end

STRINGS.NAMES.RAGS = "Litle hornelio"
STRINGS.CHARACTERS.GENERIC.DESCRIBE.RAGS = "Should something do but don't!"

return Prefab( "common/inventory/rags", fn, Assets)

post-343123-0-59058100-1410003607_thumb.

Tags don't change how the thing works, they only let other things know what it is.

 

Turns out the WilsonStateGraph handles the "Play"-action by checking for the horn/flute tag to determine the animations to be played.

Two ways to get your animation working is by overriding WilsonSG or changing the characters stategraph to one of your own. In both scenarios, another mod that does these ways will not work, keep yours from working or crash the game.

 

Sorry, I can't help more.

Edited by Mobbstar

Tags don't change how the thing works, they only let other things know what it is.

 

Turns out the WilsonStateGraph handles the "Play"-action by checking for the horn/flute tag to determine the animations to be played.

Two ways to get your animation working is by overriding WilsonSG or changing the characters stategraph to one of your own. In both scenarios, another mod that does these ways will not work, keep yours from working or crash the game.

 

Sorry, I can't help more.

 

Thanks! I'll see what I can do.

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...