The Community Bank allows you to share your points with your friends in a large money pool. When you add money to the bank everyone can access it. Points do not carry on to the next game. You can use whatever object you would like for the bank.
Installation Instructions:
Part 1: Code
A. Paste the following code at the bottom of your <mapname>.gsc file which can be found in "Call of Duty Black Ops III\usermaps\<mapname>\scripts\zm":
function bank_comm()
{
level.balance = 0;
level thread deposit();
level thread withdraw();
}
function deposit()
{
trig_depo = GetEnt("deposit_trig","targetname");
trig_depo SetHintString("Hold ^3[{+activate}]^7 to Deposit into Community Bank[Amount:1000]");
trig_depo SetCursorHint("HINT_NOICON");
while(1)
{
while(1)
{
trig_depo waittill("trigger", player);
if (player zm_score::can_player_purchase(1000))
{
level.balance += 1000;
player zm_score::minus_to_player_score(1000);
//player PlayLocalSound("purchase_accept");
IPrintLn("Deposited $1000(New Total = " + level.balance + ")");
}
else
{
//player PlayLocalSound("purchase_deny");
IPrintLn("Not Enough Money");
}
break;
}
wait(0.25);
}
}
function withdraw()
{
trig_with = GetEnt("withdraw_trig", "targetname");
trig_with SetHintString("Hold ^3[{+activate}]^7 to Withdraw From Community Bank\n[Amount: 1000][Fee: 100]");
trig_with SetCursorHint("HINT_NOICON");
while(1)
{
while(1)
{
trig_with waittill("trigger", player);
if (level.balance >= 1000 && player zm_score::can_player_purchase(100))
{
player zm_score::add_to_player_score(1000);
level.balance -= 1000;
wait(0.01);
player zm_score::minus_to_player_score(100);
//player PlayLocalSound("purchase_accept");
IPrintLn("Withdrew $1000(New Total = " + level.balance + ")");
}
else if (level.balance < 1000)
{
//player PlayLocalSound("purchase_deny");
IPrintLn("Insufficient Funds(Total = " + level.balance + ")");
}
else
{
//player PlayLocalSound("purchase_deny");
IPrintLn("Not Enough Money");
}
break;
}
wait(0.25);
}
}
level thread bank_comm();
#using scripts\zm\_zm_score;
A. Open your map in radiant
B. Open the Entity Browser by pressing B
C. Search for trigger_use
D. Drag it into your map and place it where you want to deposit money
E. Open the Entity Info by pressing N and select the trigger
F. Change the "cursorhint" value to "HINT_NOICON"
G. Change the "targetname" value to "deposit_trig"
H. Deselect the trigger and drag a new in from the Entity Browser
I. Place it where you want to withdraw money
J. Once again change the "cursorhint" value to "HINT_NOICON"
K. Change the "targetname" value to "withdraw_trig"
L. Compile and run your map before moving onto Part 3
Part 3: Sounds(optional)
A. Go into your <mapname>.gsc
B. Uncomment(delete "//") the 5 lines that say:
//player PlayLocalSound("purchase_accept");
//player PlayLocalSound("purchase_deny");
C. Go into your useraliases.csv which can be found in "Call of Duty Black Ops III\share\raw\sound\aliases"
D. Open useraliases.csv with a text editor(ie. notepad)
E. Paste the following at the bottom(if you already have this then skip this step):
purchase_accept,,,zombie\purchase\accept\accept_00.wav,,,UIN_MOD,,,,,BUS_FX,,,,,,90,90,0,500,500,,,,,,,,,,,,,,,,3d,front,,NONLOOPING,,,,,,,,,,,,,,,,,,,,,,,,,,,yes,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
purchase_deny,,,zombie\purchase\deny\deny_00.wav,,,UIN_MOD,,,,,BUS_FX,,,,,,90,90,0,500,500,,,,,,,,,,,,,,,,3d,front,,NONLOOPING,,,,,,,,,,,,,,,,,,,,,,,,,,,yes,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
G. Drag the folder from the zip file into your root folder "Call of Duty Black Ops III"
H. Now compile and run your map!
Please leave a comment if you are having trouble getting it to work.
Update:
Made it easier to install sound files and added description to each part
Extended description and changed some text sizes