Modme Forums

NSZ growing soul question

Game Modding | Call of Duty: Black Ops 3 | Scripting


ModmeBot:

Thread By: Symbo
Hello,

I try to modify the script to do some other things than what is pre-offer once the soul chest is complete but, after hours, I am going nowhere.

Is there a way to simply create a function, waittill the soul chest is done, then do stuff? I found this: if(level.grow_souls[system]<=0) but it's not helping.

Thanks


ModmeBot:

Reply By: ZombieKid164

Symbo
Hello, I try to modify the script to do some other things than what is pre-offer once the soul chest is complete but, after hours, I am going nowhere. Is there a way to simply create a function, waittill the soul chest is done, then do stuff? I found this: if(level.grow_souls[system]<=0) but it's not helping. Thanks

Hello! First of all, not sure if the "NSZ" is referring to asking NateSmithZombies this question, but he did not create this script, and I highly recommend that you ask the creator of the script how to do what you are trying to accomplish in the future if that is the case. Anyways, I have found a way to modify it so you can make it do stuff (like activating a flag, or maybe running a script) other than giving the default rewards.

Here's a basic rundown of what I did:

First, I deleted everythinginside of the SetUpReward Function and added these lines in it instead:
function SetUpReward()
{
	level waittill("allgrowsouls");
	level flag::set("soul_boxes_done");
}
then, I deleted everything inside the GrowSoulEnding function (Make sure to keep it).
function GrowSoulEnding()
{

}
That's all I did I believe. Take note that this activates a flag, so what I did was add this flag in a waittill in the script I was using this for, like so:
level flag::wait_till( "soul_boxes_done" );

//Note: you will need to add "#using scripts\shared\flag_shared;" at the top of your script
Alternatively, you could activate a function of a script by adding a #using with your script at the top of the grow_souls script and then replace my "level flag::set("soul_boxes_done");" with "level thread your_script_name::init();" or something like that. Hopefully you find this useful!