Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * Arena++ Plugin by eightd and Kuhlkid
- * Feel free to modify and share it but don't remove this author section.
- *
- */
- var arena_enabled_on_set = false;
- var arena_spec_enabled_on_set = true;
- var arena_plugin_enabled_after_install = "true";
- var arena_tbl_name = "com.eightd.arena++.arenas";
- var arena_spec_tbl_name = "com.eightd.arena++.spec";
- var arena_ploc_tbl_name = "com.eightd.arena++.ploc";
- var arena_pspecloc_tbl_name = "com.eightd.arena++.pspecloc";
- var arena_pinv_tbl_name = "com.eightd.arena++.pinv";
- var arena_pspecinv_tbl_name = "com.eightd.arena++.pspecinv";
- var arena_plug_tbl_name = "com.eightd.arena++.plug";
- var arena_pltoa_tbl_name = "com.eightd.arena++.pltoa";
- var arena_pltospec_tbl_name = "com.eightd.arena++.pltospec";
- var disabled_arena_commands = ["arenaset", "arenaremove", "arenatoggle", "arena", "barena", "arenas", "arenastart"];
- function On_PluginInit() {
- if(!dataStoreContainsKey(arena_plug_tbl_name, "pluginenabled")) {
- Datastore.Add(arena_plug_tbl_name, "pluginenabled", arena_plugin_enabled_after_install);
- }
- Server.BroadcastFrom("[Arena++]", "Arena-Plugin loaded");
- }
- function On_Command(Player, cmd, args) {
- cmd = Data.ToLower(cmd);
- if(Datastore.Get(arena_plug_tbl_name, "pluginenabled") == "false" && arrayContainsValue(disabled_arena_commands, cmd)) {
- Player.Message("Arena Plugin disabled.");
- if(Player.Admin) Player.Message("Enable it via /togglearenaplugin");
- return;
- }
- if(cmd == "arenahelp") {
- if(Player.Admin) Player.Message("Arena-Admin: /togglearenaplugin, /arenastart [arenaname] [numberofplayers] [reward], /arenaclose, /arenareset, /arenaset [name], /arenaspecset [name]. /arenaremove [name], /arenatoggle [enable]");
- Player.Message("Arena: /arenajoin [name], /arenaspec [name], /barena, /arenas, /arenaspecs, /arenahelp");
- }
- if(cmd == "togglearenaplugin") {
- if(!Player.Admin) return;
- if(args.Length > 0) {
- Player.Message("Useage: /togglearenaplugin");
- return;
- }
- var status = Datastore.Get(arena_plug_tbl_name, "pluginenabled");
- if(status == "true") {
- Datastore.Add(arena_plug_tbl_name, "pluginenabled", "false");
- Server.BroadcastFrom("[Arena++]", "Arena-Plugin Disabled");
- }
- else {
- Datastore.Add(arena_plug_tbl_name, "pluginenabled", "true");
- Server.BroadcastFrom("[Arena++]", "Arena-Plugin Enabled");
- }
- return;
- }
- if(cmd == "arenaset") {
- if(!Player.Admin) return;
- if(args.Length != 1) {
- Player.Message("Useage: /arenaset [name]");
- return;
- }
- if(dataStoreContainsKey(arena_tbl_name, args[0])) {
- Player.Message("Arena " + args[0] + " already exists. Remove it first! (/arenaremove [name])");
- return;
- }
- if(args[0].indexOf(",") != -1 || args[0].indexOf("=") != -1) {
- Player.Message("Sorry! You cannot use ',' or '=' in the arenaname!");
- return;
- }
- var Arena = {};
- Arena.Name = args[0];
- Arena.Enabled = arena_enabled_on_set;
- Arena.X = Player.X;
- Arena.Y = Player.Y;
- Arena.Z = Player.Z;
- Arena.Players = 0;
- Arena.MaxPlayers = 0;
- var astr = serializeObject(Arena);
- Datastore.Add(arena_tbl_name, args[0], astr);
- Player.Message("Arena " + args[0] + " added.");
- return;
- }
- if(cmd == "arenas") {
- if(args.Length > 0) {
- Player.Message("Useage: /arenas");
- return;
- }
- var count = 0;
- for(var astr in Datastore.Values(arena_tbl_name)) {
- var aObj = castBackToObject(astr);
- Player.Message("Arena: " + aObj.Name + " - Status: " + aObj.Enabled);
- count++;
- }
- if(count == 0) {
- Player.Message("No arenas found.");
- }
- return;
- }
- if(cmd == "arenaspecset") {
- if(!Player.Admin) return;
- if(args.Length != 1) {
- Player.Message("Useage: /arenaspecset [name]");
- return;
- }
- if(dataStoreContainsKey(arena_spec_tbl_name, args[0])) {
- Player.Message("Spectator area " + args[0] + " already exists. Remove it first! (/arenaspecremove [name])");
- return;
- }
- if(args[0].indexOf(",") != -1 || args[0].indexOf("=") != -1) {
- Player.Message("Sorry! You cannot use ',' or '=' in the arenaname!");
- return;
- }
- var ArenaSpec = {};
- ArenaSpec.Name = args[0];
- ArenaSpec.Enabled = arena_spec_enabled_on_set;
- ArenaSpec.X = Player.X;
- ArenaSpec.Y = Player.Y;
- ArenaSpec.Z = Player.Z;
- var astr = serializeObject(ArenaSpec);
- Datastore.Add(arena_spec_tbl_name, args[0], astr);
- Player.Message("Spectator area " + args[0] + " added.");
- return;
- }
- if(cmd == "arenaspecs") {
- if(args.Length > 0) {
- Player.Message("Useage: /arenaspecs");
- return;
- }
- var count = 0;
- for(var astr in Datastore.Values(arena_spec_tbl_name)) {
- var aObj = castBackToObject(astr);
- Player.Message("Spectator Area: " + aObj.Name + " - Status: " + aObj.Enabled);
- count++;
- }
- if(count == 0) {
- Player.Message("No spectator areas found.");
- }
- return;
- }
- if(cmd == "arenaremove") {
- if(!Player.Admin) return;
- if(args.Length != 1) {
- Player.Message("Useage: /arenaremove [name]");
- return;
- }
- if(!dataStoreContainsKey(arena_tbl_name, args[0])) {
- Player.Message("Arena " + args[0] + " does not exists. Add it first! (/arenaset [name])");
- return;
- }
- Datastore.Remove(arena_tbl_name, args[0]);
- Player.Message("Arena " + args[0] + " removed.");
- return;
- }
- if(cmd == "arenaspecremove") {
- if(!Player.Admin) return;
- if(args.Length != 1) {
- Player.Message("Useage: /arenaspecremove [name]");
- return;
- }
- if(!dataStoreContainsKey(arena_spec_tbl_name, args[0])) {
- Player.Message("Spectator area " + args[0] + " does not exists. Add it first! (/arenaspecset [name])");
- return;
- }
- Datastore.Remove(arena_spec_tbl_name, args[0]);
- Player.Message("Spectator area " + args[0] + " removed.");
- return;
- }
- if(cmd == "arenatoggle") {
- if(!Player.Admin) return;
- if(args.Length != 1) {
- Player.Message("Useage: /arenatoggle [name]");
- return;
- }
- if(!dataStoreContainsKey(arena_tbl_name, args[0])) {
- Player.Message("Arena " + args[0] + " does not exists. Add it first! (/arenaset [name])");
- return;
- }
- var astr = Datastore.Get(arena_tbl_name, args[0]);
- var aObj = castBackToObject(astr);
- if(aObj.Enabled == "true") {
- aObj.Enabled = false;
- astr = serializeObject(aObj);
- Datastore.Add(arena_tbl_name, args[0], astr);
- Player.Message("Arena " + args[0] + " disabled.");
- }
- else {
- aObj.Enabled = true;
- astr = serializeObject(aObj);
- Datastore.Add(arena_tbl_name, args[0], astr);
- Player.Message("Arena " + args[0] + " enabled.");
- }
- return;
- }
- if(cmd == "arenaspectoggle") {
- if(!Player.Admin) return;
- if(args.Length != 1) {
- Player.Message("Useage: /arenaspectoggle [name]");
- return;
- }
- if(!dataStoreContainsKey(arena_spec_tbl_name, args[0])) {
- Player.Message("Spectator area " + args[0] + " does not exists. Add it first! (/arenaspecset [name])");
- return;
- }
- var astr = Datastore.Get(arena_spec_tbl_name, args[0]);
- var aObj = castBackToObject(astr);
- if(aObj.Enabled == "true") {
- aObj.Enabled = false;
- astr = serializeObject(aObj);
- Datastore.Add(arena_spec_tbl_name, args[0], astr);
- Player.Message("Spectator area " + args[0] + " disabled.");
- }
- else {
- aObj.Enabled = true;
- astr = serializeObject(aObj);
- Datastore.Add(arena_spec_tbl_name, args[0], astr);
- Player.Message("Spectator area " + args[0] + " enabled.");
- }
- return;
- }
- if(cmd == "arenastart") {
- if(!Player.Admin)
- return;
- if(args.Length == 0) {
- Player.Message("Useage: /arenastart [arenaname] [numberofplayers] [reward]");
- return;
- }
- var nameofarena = args[0];
- var maxplayers = parseInt(args[1]);
- var reward = getstringofargs(args, 2,0);
- if(!dataStoreContainsKey(arena_tbl_name, args[0])) {
- Player.Message("Arena " + args[0] + " does not exists. Add it first! (/arenaset [name])");
- return;
- }
- for(var astr in Datastore.Values(arena_tbl_name)) {
- var aObj = castBackToObject(astr);
- aObj.Enabled = false;
- var astr2 = serializeObject(aObj);
- Datastore.Add(arena_tbl_name, aObj.Name, astr2);
- }
- var astr = Datastore.Get(arena_tbl_name, args[0]);
- var aObj = castBackToObject(astr);
- aObj.Enabled = true;
- aObj.MaxPlayers = maxplayers;
- aObj.Players = 0;
- Player.Message("Arena " + args[0] + " enabled.");
- astr = serializeObject(aObj);
- Datastore.Add(arena_tbl_name, args[0], astr);
- Server.BroadcastNotice("Arena now being held at " + args[0] + " for " + aObj.MaxPlayers + " contestants. Type /arenajoin " + args[0] + " to join. Reward: " + reward + ".");
- Server.BroadcastFrom("[Arena++]", "Arena now being held at " + args[0] + " for " + aObj.MaxPlayers + " contestants. Type /arenajoin " + args[0] + " to join.");
- Server.BroadcastFrom("[Arena++]", "Reward: " + reward + ".");
- Server.BroadcastFrom("[Arena++]", "Disclaimer! Mod slots on guns will be reset if they are in your inventory upon joining the arena.");
- Server.BroadcastFrom("[Arena++]", "To spectate any arena type /arenaspec [arenaname]-S");
- return;
- }
- if(cmd == "arenaclose"){
- if(!Player.Admin)
- return;
- if(args.Length > 0){
- Player.Message("Useage: /arenaclose")
- }
- for(var astr in Datastore.Values(arena_tbl_name)) {
- var aObj = castBackToObject(astr);
- aObj.Enabled = false;
- var astr2 = serializeObject(aObj);
- Datastore.Add(arena_tbl_name, aObj.Name, astr2);
- }
- Server.BroadcastFrom("[Arena++]", "All arenas have been closed.");
- if(!Player.Admin)
- return;
- if(args.Length > 0){
- Player.Message("Useage: /arenaclose")
- }
- }
- if(cmd == "arenajoin") {
- if(args.Length == 0) {
- Player.Message("Useage: /arenajoin [name]");
- return;
- }
- if(!dataStoreContainsKey(arena_tbl_name, args[0])) {
- Player.Message("Arena " + args[0] + " does not exists. Type /arenas");
- return;
- }
- var astr = Datastore.Get(arena_tbl_name, args[0]);
- var aObj = castBackToObject(astr);
- if(aObj.Enabled == "false") {
- Player.Message("Arena " + args[0] + " not enabled. Sorry!");
- return;
- }
- if(parseInt(aObj.Players) + 1 > parseInt(aObj.MaxPlayers)){
- Player.Message("The arena is full! Type /arenaspec " + args[0] + "-S to spectate.");
- return;
- }
- aObj.Players = parseInt(aObj.Players) + 1;
- aObj.MaxPlayers = parseInt(aObj.MaxPlayers);
- var PlayerLocation = {};
- PlayerLocation.X = Player.X;
- PlayerLocation.Z = Player.Z;
- PlayerLocation.Y = Player.Y;
- Datastore.Add(arena_ploc_tbl_name, Player.SteamID, PlayerLocation);
- Datastore.Add(arena_pltoa_tbl_name, Player.SteamID, aObj.Name);
- var Inventory = [];
- var counter = 0;
- for(var Item in Player.Inventory.Items) {
- if(Item && Item.Name) {
- var myitem = {};
- myitem.name = Item.Name;
- myitem.quantity = Item.Quantity;
- myitem.slot = Item.Slot;
- Inventory[counter++] = myitem;
- }
- }
- for(var Item in Player.Inventory.ArmorItems) {
- if(Item && Item.Name) {
- var myitem = {};
- myitem.name = Item.Name;
- myitem.quantity = Item.Quantity;
- myitem.slot = Item.Slot;
- Inventory[counter++] = myitem;
- }
- }
- for(var Item in Player.Inventory.BarItems) {
- if(Item && Item.Name) {
- var myitem = {};
- myitem.name = Item.Name;
- myitem.quantity = Item.Quantity;
- myitem.slot = Item.Slot;
- Inventory[counter++] = myitem;
- }
- }
- Datastore.Add(arena_pinv_tbl_name, Player.SteamID, Inventory)
- Player.Inventory.ClearAll();
- Player.TeleportTo(parseFloat(aObj.X), parseFloat(aObj.Y), parseFloat(aObj.Z));
- Player.TeleportTo(parseFloat(aObj.X), parseFloat(aObj.Y), parseFloat(aObj.Z));
- Player.Message("You teleported to Arena: " + args[0]);
- var astr = serializeObject(aObj);
- Datastore.Add(arena_tbl_name, aObj.Name, astr);
- Server.BroadcastNotice((aObj.MaxPlayers - aObj.Players) + " spots left.");
- return;
- }
- if(cmd == "arenaspec") {
- if(args.Length == 0) {
- Player.Message("Useage: /arenaspec [name]");
- return;
- }
- if(!dataStoreContainsKey(arena_spec_tbl_name, args[0])) {
- Player.Message("Spectator area " + args[0] + " does not exist. Type /arenaspec");
- return;
- }
- var astr = Datastore.Get(arena_spec_tbl_name, args[0]);
- var aObj = castBackToObject(astr);
- if(aObj.Enabled == "false") {
- Player.Message("Spectator area " + args[0] + " is not enabled. Sorry!");
- return;
- }
- var PlayerSpecLocation = {};
- PlayerSpecLocation.X = Player.X;
- PlayerSpecLocation.Z = Player.Z;
- PlayerSpecLocation.Y = Player.Y;
- Datastore.Add(arena_pspecloc_tbl_name, Player.SteamID, PlayerSpecLocation);
- Datastore.Add(arena_pltospec_tbl_name, Player.SteamID, aObj.Name);
- var Inventory = [];
- var counter = 0;
- for(var Item in Player.Inventory.Items) {
- if(Item && Item.Name) {
- var myitem = {};
- myitem.name = Item.Name;
- myitem.quantity = Item.Quantity;
- myitem.slot = Item.Slot;
- Inventory[counter++] = myitem;
- }
- }
- for(var Item in Player.Inventory.ArmorItems) {
- if(Item && Item.Name) {
- var myitem = {};
- myitem.name = Item.Name;
- myitem.quantity = Item.Quantity;
- myitem.slot = Item.Slot;
- Inventory[counter++] = myitem;
- }
- }
- for(var Item in Player.Inventory.BarItems) {
- if(Item && Item.Name) {
- var myitem = {};
- myitem.name = Item.Name;
- myitem.quantity = Item.Quantity;
- myitem.slot = Item.Slot;
- Inventory[counter++] = myitem;
- }
- }
- Datastore.Add(arena_pspecinv_tbl_name, Player.SteamID, Inventory)
- Player.Inventory.ClearAll();
- Player.TeleportTo(parseFloat(aObj.X), parseFloat(aObj.Y), parseFloat(aObj.Z));
- Player.TeleportTo(parseFloat(aObj.X), parseFloat(aObj.Y), parseFloat(aObj.Z));
- Player.Message("You teleported to Arena: " + args[0]);
- var astr = serializeObject(aObj);
- Datastore.Add(arena_tbl_name, aObj.Name, astr);
- return;
- }
- if(cmd == "barena") {
- if(args.Length > 0) {
- Player.Message("Useage: /barena");
- return;
- }
- RemovePlayerFromArena(Player, 0);
- return;
- }
- if(cmd == "pload"){
- if(Player.Admin){
- if(args.Length == 0){
- Player.Message("Please choose a loadout.")
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("M4", 30, 24);
- Player.Inventory.AddItemTo("Shotgun", 31, 8);
- Player.Inventory.AddItemTo("Bolt Action Rifle", 32, 3);
- Player.Inventory.AddItemTo("Wood Barricade", 33, 20);
- Player.Inventory.AddItemTo("Large Medkit", 34, 5);
- Player.Inventory.AddItemTo("Small Medkit", 35, 5);
- Player.Inventory.AddItemTo("MP5A4", 0, 30);
- Player.Inventory.AddItemTo("556 Ammo", 1, 250);
- Player.Inventory.AddItemTo("556 Ammo", 2, 250);
- Player.Inventory.AddItemTo("9mm Ammo", 3, 250);
- Player.Inventory.AddItemTo("Shotgun Shells", 4, 250);
- }
- if(args[0] == "sniper.st"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("Bolt Action Rifle", 30, 3);
- Player.Inventory.AddItemTo("Large Medkit", 34, 5);
- Player.Inventory.AddItemTo("Small Medkit", 35, 5);
- Player.Inventory.AddItemTo("Wood Barricade", 33, 20);
- Player.Inventory.AddItemTo("556 Ammo", 0, 250);
- Player.Inventory.AddItemTo("556 Ammo", 1, 250);
- }
- if(args[0] == "sniper.nmed"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("Bolt Action Rifle", 30, 3);
- Player.Inventory.AddItemTo("Wood Barricade", 31, 20);
- Player.Inventory.AddItemTo("556 Ammo", 0, 250);
- }
- if(args[0] == "sniper.nb"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("Bolt Action Rifle", 30, 3);
- Player.Inventory.AddItemTo("Large Medkit", 34, 5);
- Player.Inventory.AddItemTo("Small Medkit", 35, 5);
- Player.Inventory.AddItemTo("556 Ammo", 0, 250);
- }
- if(args[0] == "sniper.n"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("Bolt Action Rifle", 30, 3);
- Player.Inventory.AddItemTo("556 Ammo", 0, 250);
- }
- if(args[0] == "assault.st"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("M4", 30, 24);
- Player.Inventory.AddItemTo("Wood Barricade", 31, 20);
- Player.Inventory.AddItemTo("Large Medkit", 34, 5);
- Player.Inventory.AddItemTo("Small Medkit", 35, 5);
- Player.Inventory.AddItemTo("556 Ammo", 0, 250);
- Player.Inventory.AddItemTo("556 Ammo", 1, 250);
- Player.Inventory.AddItemTo("556 Ammo", 2, 250);
- }
- if(args[0] == "assault.nmed"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("M4", 30, 24);
- Player.Inventory.AddItemTo("Wood Barricade", 31, 20);
- Player.Inventory.AddItemTo("556 Ammo", 0, 250);
- Player.Inventory.AddItemTo("556 Ammo", 0, 250);
- Player.Inventory.AddItemTo("556 Ammo", 0, 250);
- }
- if(args[0] == "assult.nb"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("M4", 30, 24);
- Player.Inventory.AddItemTo("Large Medkit", 34, 5);
- Player.Inventory.AddItemTo("Small Medkit", 35, 5);
- Player.Inventory.AddItemTo("556 Ammo", 0, 250);
- Player.Inventory.AddItemTo("556 Ammo", 1, 250);
- Player.Inventory.AddItemTo("556 Ammo", 2, 250);
- }
- if(args[0] == "assult.n"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("M4", 30, 24);
- Player.Inventory.AddItemTo("556 Ammo", 0, 250);
- Player.Inventory.AddItemTo("556 Ammo", 1, 250);
- Player.Inventory.AddItemTo("556 Ammo", 2, 250);
- }
- if(args[0] == "shotty.st"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("Shotgun", 30, 8);
- Player.Inventory.AddItemTo("Wood Barricade", 31, 20);
- Player.Inventory.AddItemTo("Large Medkit", 34, 5);
- Player.Inventory.AddItemTo("Small Medkit", 35, 5);
- Player.Inventory.AddItemTo("Shotgun Shells", 0, 250);
- }
- if(args[0] == "shotty.nmed"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("Shotgun", 30, 8);
- Player.Inventory.AddItemTo("Wood Barricade", 31, 20);
- Player.Inventory.AddItemTo("Shotgun Shells", 0, 250);
- }
- if(args[0] == "shotty.nb"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("Shotgun", 30, 8);
- Player.Inventory.AddItemTo("Large Medkit", 34, 5);
- Player.Inventory.AddItemTo("Small Medkit", 35, 5);
- Player.Inventory.AddItemTo("Shotgun Shells", 0, 250);
- }
- if(args[0] == "shotty.n"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("Shotgun", 30, 8);
- Player.Inventory.AddItemTo("Shotgun Shells", 0, 250);
- }
- if(args[0] == "rush.st"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("MP5A4", 30, 30);
- Player.Inventory.AddItemTo("Wood Barricade", 31, 20);
- Player.Inventory.AddItemTo("Large Medkit", 34, 5);
- Player.Inventory.AddItemTo("Small Medkit", 35, 5);
- Player.Inventory.AddItemTo("9mm Ammo", 0, 250);
- Player.Inventory.AddItemTo("9mm Ammo", 1, 250);
- Player.Inventory.AddItemTo("9mm Ammo", 2, 250);
- }
- if(args[0] == "rush.nmed"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("MP5A4", 30, 30);
- Player.Inventory.AddItemTo("Wood Barricade", 31, 20);
- Player.Inventory.AddItemTo("9mm Ammo", 0, 250);
- Player.Inventory.AddItemTo("9mm Ammo", 1, 250);
- Player.Inventory.AddItemTo("9mm Ammo", 2, 250);
- }
- if(args[0] == "rush.nb"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("MP5A4", 30, 30);
- Player.Inventory.AddItemTo("Wood Barricade", 31, 20);
- Player.Inventory.AddItemTo("9mm Ammo", 0, 250);
- Player.Inventory.AddItemTo("9mm Ammo", 1, 250);
- Player.Inventory.AddItemTo("9mm Ammo", 2, 250);
- }
- if(args[0] == "rush.n"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Kevlar Helmet", 36, 1);
- Player.Inventory.AddItemTo("Kevlar Vest", 37, 1);
- Player.Inventory.AddItemTo("Kevlar Pants", 38, 1);
- Player.Inventory.AddItemTo("Kevlar Boots", 39, 1);
- Player.Inventory.AddItemTo("MP5A4", 30, 30);
- Player.Inventory.AddItemTo("9mm Ammo", 0, 250);
- Player.Inventory.AddItemTo("9mm Ammo", 1, 250);
- Player.Inventory.AddItemTo("9mm Ammo", 2, 250);
- }
- if(args[0] == "bow.st"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Cloth Helmet", 36, 1);
- Player.Inventory.AddItemTo("Cloth Vest", 37, 1);
- Player.Inventory.AddItemTo("Cloth Pants", 38, 1);
- Player.Inventory.AddItemTo("Cloth Boots", 39, 1);
- Player.Inventory.AddItemTo("Hunting Bow", 30, 1);
- Player.Inventory.AddItemTo("Bandage", 31, 2);
- Player.Inventory.AddItemTo("Arrow", 0, 10);
- Player.Inventory.AddItemTo("Arrow", 0, 10);
- Player.Inventory.AddItemTo("Arrow", 0, 10);
- }
- if(args[0] == "bow.nmed"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Cloth Helmet", 36, 1);
- Player.Inventory.AddItemTo("Cloth Vest", 37, 1);
- Player.Inventory.AddItemTo("Cloth Pants", 38, 1);
- Player.Inventory.AddItemTo("Cloth Boots", 39, 1);
- Player.Inventory.AddItemTo("Hunting Bow", 30, 1);
- Player.Inventory.AddItemTo("Arrow", 0, 10);
- Player.Inventory.AddItemTo("Arrow", 0, 10);
- Player.Inventory.AddItemTo("Arrow", 0, 10);
- }
- if(args[0] == "pick"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Pick Axe", 30, 1);
- Player.Inventory.AddItemTo("Bandage", 31, 1);
- }
- if(args[0] == "rock"){
- Player.Inventory.ClearAll();
- Player.Inventory.AddItemTo("Rock", 30, 1);
- }
- }
- else{
- Player.Message("You aren't an admin silly!");
- }
- }
- if(cmd == "arenareset"){
- if(Player.Admin){
- Datastore.Flush(arena_ploc_tbl_name);
- Datastore.Flush(arena_pinv_tbl_name);
- Datastore.Flush(arena_pltoa_tbl_name);
- }
- for(var astr in Datastore.Values(arena_tbl_name)) {
- var aObj = castBackToObject(astr);
- aObj.Enabled = false;
- aObj.MaxPlayers = 0;
- aObj.Players = 0;
- var astr2 = serializeObject(aObj);
- Datastore.Add(arena_tbl_name, aObj.Name, astr2);
- }
- Server.BroadcastFrom("[Arena++]", "All arenas have been reset.")
- }
- if(cmd == "prepareuninstall") {
- if(Player.Admin) {
- Datastore.Flush(arena_tbl_name);
- Datastore.Flush(arena_ploc_tbl_name);
- Datastore.Flush(arena_pinv_tbl_name);
- Datastore.Flush(arena_plug_tbl_name);
- Datastore.Flush(arena_pltoa_tbl_name);
- Datastore.Flush(arena_pltospec_tbl_name);
- Player.MessageFrom("[Arena++]", "Uninstalling prepared. You can delete the plugin now!");
- }
- }
- }
- function On_ServerInit() {
- Datastore.Load();
- }
- function On_ServerShutdown() {
- Datastore.Save();
- }
- function RemovePlayerFromArena(Player, reasonid) {
- if(dataStoreContainsKey(arena_ploc_tbl_name, Player.SteamID)) {
- if(dataStoreContainsKey(arena_pltoa_tbl_name, Player.SteamID)) {
- var ArenaName = Datastore.Get(arena_pltoa_tbl_name, Player.SteamID);
- var astr = Datastore.Get(arena_tbl_name, ArenaName);
- var aObj = castBackToObject(astr);
- aObj.Players = parseInt(aObj.Players) - 1;
- aObj.MaxPlayers = parseInt(aObj.MaxPlayers);
- Datastore.Remove(arena_pltoa_tbl_name, Player.SteamID);
- astr = serializeObject(aObj);
- Datastore.Add(arena_tbl_name, aObj.Name, astr);
- Server.BroadcastNotice(aObj.Players + " players remain.");
- }
- if(reasonid == 0) {
- var PlayerLocation = Datastore.Get(arena_ploc_tbl_name, Player.SteamID);
- Player.TeleportTo(PlayerLocation.X, PlayerLocation.Y, PlayerLocation.Z);
- Player.Message("You teleported back to your location!");
- Player.Inventory.ClearAll();
- if(dataStoreContainsKey(arena_pinv_tbl_name, Player.SteamID)) {
- var Inventory = Datastore.Get(arena_pinv_tbl_name, Player.SteamID);
- if(Inventory) {
- for(var i = 0; i < Inventory.length; i++) {
- var Item = Inventory[i];
- if(Item && Item.name) {
- Player.Inventory.AddItemTo(Item.name, Item.slot, Item.quantity);
- }
- }
- }
- else {
- Player.Message("Inventory == null");
- }
- Datastore.Remove(arena_pinv_tbl_name, Player.SteamID);
- }
- else {
- Player.Message("No Items found!");
- }
- Datastore.Remove(arena_ploc_tbl_name, Player.SteamID);
- }
- if(dataStoreContainsKey(arena_pltospec_tbl_name, Player.SteamID)) {
- var ArenaName = Datastore.Get(arena_pltospec_tbl_name, Player.SteamID);
- var astr = Datastore.Get(arena_tbl_name, ArenaName);
- var aObj = castBackToObject(astr);
- Datastore.Remove(arena_pltoa_tbl_name, Player.SteamID);
- astr = serializeObject(aObj);
- Datastore.Add(arena_tbl_name, aObj.Name, astr);
- }
- if(reasonid == 0) {
- var PlayerLocation = Datastore.Get(arena_pltospec_tbl_name, Player.SteamID);
- Player.TeleportTo(PlayerLocation.X, PlayerLocation.Y, PlayerLocation.Z);
- Player.Message("You teleported back to your location!");
- Player.Inventory.ClearAll();
- if(dataStoreContainsKey(arena_pspecinv_tbl_name, Player.SteamID)) {
- var Inventory = Datastore.Get(arena_pspecinv_tbl_name, Player.SteamID);
- if(Inventory) {
- for(var i = 0; i < Inventory.length; i++) {
- var Item = Inventory[i];
- if(Item && Item.name) {
- Player.Inventory.AddItemTo(Item.name, Item.slot, Item.quantity);
- }
- }
- }
- else {
- Player.Message("Inventory == null");
- }
- Datastore.Remove(arena_pspecinv_tbl_name, Player.SteamID);
- }
- else {
- Player.Message("No Items found!");
- }
- Datastore.Remove(arena_pltospec_tbl_name, Player.SteamID);
- }
- if(reasonid == 1) {
- }
- }
- else {
- Player.Message("No pLocation found!");
- }
- if(dataStoreContainsKey(arena_pspecloc_tbl_name, Player.SteamID)) {
- if(dataStoreContainsKey(arena_pltospec_tbl_name, Player.SteamID)) {
- var ArenaName = Datastore.Get(arena_pltospec_tbl_name, Player.SteamID);
- var astr = Datastore.Get(arena_tbl_name, ArenaName);
- var aObj = castBackToObject(astr);
- Datastore.Remove(arena_pltoa_tbl_name, Player.SteamID);
- astr = serializeObject(aObj);
- Datastore.Add(arena_tbl_name, aObj.Name, astr);
- }
- if(reasonid == 0) {
- var PlayerSpecLocation = Datastore.Get(arena_pltospec_tbl_name, Player.SteamID);
- Player.TeleportTo(PlayerLocation.X, PlayerLocation.Y, PlayerLocation.Z);
- Player.Message("You teleported back to your location!");
- Player.Inventory.ClearAll();
- if(dataStoreContainsKey(arena_pspecinv_tbl_name, Player.SteamID)) {
- var Inventory = Datastore.Get(arena_pspecinv_tbl_name, Player.SteamID);
- if(Inventory) {
- for(var i = 0; i < Inventory.length; i++) {
- var Item = Inventory[i];
- if(Item && Item.name) {
- Player.Inventory.AddItemTo(Item.name, Item.slot, Item.quantity);
- }
- }
- }
- else {
- Player.Message("Inventory == null");
- }
- Datastore.Remove(arena_pspecinv_tbl_name, Player.SteamID);
- }
- else {
- Player.Message("No Items found!");
- }
- Datastore.Remove(arena_pltospec_tbl_name, Player.SteamID);
- }
- if(reasonid == 1) {
- }
- }
- else {
- Player.Message("No pLocation found!");
- }
- }
- function castBackToObject(serializedstring) {
- var MyObject = {};
- var s1 = serializedstring.split(",");
- for(var i = 0; i < s1.length; i++) {
- var s2 = s1[i].split("=");
- MyObject[s2[0]] = s2[1];
- }
- return MyObject;
- }
- function serializeObject(MyObject) {
- var string = "";
- for(var key in MyObject) {
- if(MyObject.hasOwnProperty(key)) {
- string += key + "=" + MyObject[key] + ",";
- }
- }
- string = Data.Substring(string, 0 , Data.StrLen(string) -1);
- return string;
- }
- function arrayContainsValue(array, value) {
- for(var i = 0; i < array.length; i++) {
- if(array[i] == value) {
- return true;
- }
- }
- return false;
- }
- function dataStoreContainsKey(tbl, pkey) {
- for(var key in Datastore.Keys(tbl)) {
- if(Data.ToLower(key) == Data.ToLower(pkey)) return true;
- }
- return false;
- }
- function On_ServerInit() {
- Datastore.Load();
- }
- function On_ServerShutdown() {
- Datastore.Flush(arena_pinv_tbl_name);
- Datastore.Flush(arena_ploc_tbl_name);
- Datastore.Flush(arena_pltoa_tbl_name);
- Datastore.Save();
- }
- function getstringofargs(args, start, followingargs){
- var string = "";
- for(var i = start; i < args.Length - followingargs; i++) {
- string += args[i] + " ";
- }
- string = Data.Substring(string, 0, Data.StrLen(string) - 1);
- return string;
- }
- function On_PlayerKilled(DeathEvent) {
- if(dataStoreContainsKey(arena_pltoa_tbl_name, DeathEvent.Victim.SteamID)){
- RemovePlayerFromArena(DeathEvent.Victim, 1);
- //add deathmessage here
- }
- }
- function On_PlayerDisconnected(Player){
- RemovePlayerFromArena(Player, 2);
- }
- function On_PlayerSpawned(Player, SpawnEvent) {
- if(dataStoreContainsKey(arena_pinv_tbl_name, Player.SteamID)) {
- Player.Inventory.ClearAll();
- var Inventory = Datastore.Get(arena_pinv_tbl_name, Player.SteamID);
- if(Inventory) {
- for(var i = 0; i < Inventory.length; i++) {
- var Item = Inventory[i];
- if(Item && Item.name) {
- Player.Inventory.AddItemTo(Item.name, Item.slot, Item.quantity);
- }
- }
- }
- Datastore.Remove(arena_pinv_tbl_name, Player.SteamID);
- }
- }
- function On_PlayerSpawning(Player, SpawnEvent) {
- if(dataStoreContainsKey(arena_ploc_tbl_name, Player.SteamID)) {
- var PlayerLocation = Datastore.Get(arena_ploc_tbl_name, Player.SteamID);
- SpawnEvent.X = PlayerLocation.X;
- SpawnEvent.Y = PlayerLocation.Y;
- SpawnEvent.Z = PlayerLocation.Z;
- Datastore.Remove(arena_ploc_tbl_name, Player.SteamID);
- }
- }
- /*function ArenaPlayers(arena){
- var obj = {};
- obj = DataStore.GetTable(arena_pltoa_tbl_name);
- for(var key in obj.Keys){
- var arenaname = obj[key];
- if(arenamane.Contains(arena)){
- }
- }
- }*/
Advertisement
Add Comment
Please, Sign In to add comment