Much00Msh00 Posted January 29, 2015 Share Posted January 29, 2015 Hi Mod makers and Developers! I'm trying to do a mod character that has more injuries while he's freezing, but i'm not the best programer and later looking for too much code in other mods and games files... I'm in deadlock... Some one can tell me what's wrong in this code? local function allergic(inst)inst.components.talker:Say(GetString(inst.prefab, "ANNOUNCE_COLD2"))inst.components.locomotor.walkspeed = (TUNING.WILSON_WALK_SPEED * 0.5)inst.components.locomotor.runspeed = (TUNING.WILSON_RUN_SPEED * 1)inst.components.combat.damagemultiplier = 0.5inst.components.temperature.hurtrate = 1.3endinst:ListenForEvent( "startfreezing", function() allergic(inst) end , GetWorld())I already tried to change the listened event fboy other like "isWinter", "self.temp <= 0", "coldness" ... but still not working I really appreciate any kind help Link to comment Share on other sites More sharing options...
DarkXero Posted January 30, 2015 Share Posted January 30, 2015 local function allergic(inst) if TheWorld.ismastersim then inst.components.combat.damagemultiplier = 0.5 inst.components.temperature.hurtrate = 1.3 end inst.components.talker:Say(GetString(inst.prefab, "ANNOUNCE_COLD2")) inst.components.locomotor.walkspeed = (TUNING.WILSON_WALK_SPEED * 0.5) inst.components.locomotor.runspeed = (TUNING.WILSON_RUN_SPEED * 1)end-- Here a function stopallergy similar to allergic with opposite values to turn character back to normallocal function common_postinit(inst) -- Your code inst:ListenForEvent("startfreezing", allergic) inst:ListenForEvent("stopfreezing", stopallergy)endcommon_postinit is for host and client code.Clients need the locomotor changes or you would rubberband.Clients have the talker component so you can share it.Clients don't need the multiplier or the hurtrate. You don't change the runspeed, so, it's kinda moot.Modifying damagemultiplier makes your character deal less damage, not receive it.I would say for you to look into the RoG characters mod to check out how Wigfrid modifies receiving damage. Link to comment Share on other sites More sharing options...
Much00Msh00 Posted January 30, 2015 Author Share Posted January 30, 2015 Thanks you so much @DarkXero, this code works perfectly I've done what you told me (adding the function stopallergy also) and changed the runspeed's value (same as walkspeed's value), I thought walkspeed means the move speed of character, and runspeed is only when he's moving on a road... I don't know the difference for now... Besides I want to explain my intention decreasing damagemultiplier it's makes my character deal less damage because he's feeling very sick when its cold, so that's correct, maybe 0.5 it's so hard and I'll increase it a bit Finally I deleted "inst.components.talker:Say(GetString(inst.prefab, "ANNOUNCE_COLD2"))" because it overlaps with "ANNOUNCE_COLD" One step closer to finish the mod Link to comment Share on other sites More sharing options...
DarkXero Posted January 30, 2015 Share Posted January 30, 2015 (edited) I assumed that "has more injuries while he's freezing" meant that he would receive extra damage, Much00Msh00. The player only runs, other creatures though have walk and run speeds and use both. To avoid the overlap, may I introduce you to:inst:DoTaskInTime(2, function(inst) inst.components.talker:Say(GetString(inst.prefab, "ANNOUNCE_COLD2"))end)Which will execute the function after 2 seconds. Edited January 30, 2015 by DarkXero Link to comment Share on other sites More sharing options...
Much00Msh00 Posted January 30, 2015 Author Share Posted January 30, 2015 May I had to put in the title "injuries and annoyances", because the runspeed and damage decreased aren't physical injuries at all, although they are related... Anyway inst.components.temperature.hurtrate = 1.3 increase the damage of coldness, right? but.. thats affects fire damage too? I hope no, I saw too many others mods with temperarture.hurtrate = 0 to be immunity to cold in winter, so I inverted it, for adding more damage. The winters in this game are complicated but with this character will be hardest as hell Your help is very usefull, I'll not forget you in the credits of this mod ^^ Link to comment Share on other sites More sharing options...
DarkXero Posted January 30, 2015 Share Posted January 30, 2015 inst.components.health.fire_damage_scale = XAffects fire damage, Willow has it in 0. The hurtrate is how much damage people get per tick freezing. No need to include me anywhere. Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now