Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var fix = [
- ["Campfire", "Camp Fire"],
- ["Wood_Shelter", "Wood Shelter"], ["Barricade_Fence_Deployable", "Wood Barricade"],
- ["Wood Spike Wall", "Spike Wall"], ["Large Wood Spike Wall", "Large Spike Wall"],
- ["Wood Box", "Wood Storage Box"],["Wood Box Large", "Large Wood Storage"],
- ["Wood Door Frame", "Wood Doorway"], ["Metal Door Frame", "Metal Doorway"],
- ["Wood Window Frame", "Wood Window"], ["Metal Window Frame", "Metal Window"],
- ["Metal Bars Window", "Metal Window Bars"]
- ];
- var tryb = 0; // 0-> wyłacza się po każdym zniszczeniu 1-> wyłacza się po czasie 2-> w ogóle się nie wyłącza samodzielnie
- var doEkwipunku = false; // true -> Rozwalone elementy dodają się do ekwipunku
- var ttt = [];
- ttt[0] = 2 ; /// GODZINA STARTU
- ttt[1] = 45; // MINUTY STARTU
- var tt2 = [];
- tt2[0] = 3; // godzina zakończenia
- tt2[1] = 15; // minuty zakończenia
- function On_EntityHurt(Hurt)
- {
- if(Hurt.Attacker != null && Hurt.Entity != null)
- {
- if(Hurt.Attacker.PlayerClient.netUser.userID == Hurt.Entity.OwnerID)
- {
- if(GetMode(Hurt.Attacker))
- {
- if(destItem != "Metal Window Bars" && IsEligible(Hurt) == true)
- {
- Hurt.Entity.Destroy();
- if(doEkwipunku)
- {
- var destItem = StringFix(Hurt.Entity.Name);
- Hurt.Attacker.Inventory.AddItem(destItem, 1);
- Rust.Notice.Inventory(Hurt.Attacker.PlayerClient.netPlayer, "1 x " + destItem);
- }
- }
- if(tryb==0)
- {
- Data.AddTableValue("destroy_mode", Hurt.Attacker.SteamID, !GetMode(Hurt.Attacker));
- Hurt.Attacker.Message("destroy mode automatycznie wyłączony");
- //Hurt.Attacker.Message("TRYB==0");
- }
- else if(tryb==1)
- {
- var time = parseInt(System.DateTime.Now.ToString("%H")*60)+parseInt(System.DateTime.Now.ToString("%m"));
- //Hurt.Attacker.Message("TRYB==1");
- var t2 = (tt2[0]*60)+tt2[1];
- if(time > t2)
- {
- //Hurt.Attacker.Message("time > t2");
- Data.AddTableValue("destroy_mode", Hurt.Attacker.SteamID, !GetMode(Hurt.Attacker));
- Hurt.Attacker.Message("destroy mode automatycznie wyłączony (minęła "+tt2[0]+":"+tt2[1]+")");
- }
- else
- {
- Hurt.Attacker.Message("Możesz niszczyć przedmioty do "+tt2[0]+":"+tt2[1]);
- Hurt.Attacker.Message("Teraz jest godzina " + System.DateTime.Now.ToString("HH:mm"));
- }
- }
- else
- {
- //Hurt.Attacker.Message("TRYB==2");
- Hurt.Attacker.Message("nieograniczone używanie destroy mode");
- }
- }
- else
- {
- //Hurt.Attacker.Message("destroy mode był i jest wyłączony");
- }
- }
- }
- }
- function On_Command(Player, cmd, args)
- {
- var time = parseInt(System.DateTime.Now.ToString("%H")*60)+parseInt(System.DateTime.Now.ToString("%m"));
- switch(cmd)
- {
- case "destroy":
- if((tryb==0)||(tryb==1))
- {
- var t1 = (ttt[0]*60)+ttt[1];
- var t2 = (tt2[0]*60)+tt2[1];
- if((time >= t1)&(time < t2))
- {
- Data.AddTableValue("destroy_mode", Player.SteamID, !GetMode(Player));
- Player.Message("Destroy Mode has been " + (GetMode(Player) ? "enabled." : "disabled."));
- }
- else
- {
- if(GetMode(Player))
- {
- Player.Message("Autowyłącznie Destroy Mode");
- Data.AddTableValue("destroy_mode", Player.SteamID, !GetMode(Player));
- }
- Player.Message("Destroy Mode dostepny od "+ttt[0]+":"+ttt[1]+" do "+tt2[0]+":"+tt2[1]);
- Player.Message("Teraz jest godzina " + System.DateTime.Now.ToString("HH:mm"));
- }
- }
- else
- {
- Data.AddTableValue("destroy_mode", Player.SteamID, !GetMode(Player));
- Player.Message("Destroy Mode has been " + (GetMode(Player) ? "enabled." : "disabled."));
- }
- }
- }
- function GetMode(Player)
- {
- var destroy = Data.GetTableValue("destroy_mode", Player.SteamID);
- if(destroy== null)
- {
- return 'false';
- }
- else
- {
- return destroy;
- }
- }
- function StringFix(str)
- {
- str = str.replace(/([a-z])([A-Z])/g, '$1 $2');
- for(var i=1; i < fix.length; i++)
- {
- if(str==fix[0])
- {
- return fix[1];
- }
- }
- return str;
- }
- function IsEligible(HurtEvent)
- {
- try
- {
- var Eligible = HurtEvent.Entity.Object._master.ComponentCarryingWeight(HurtEvent.Entity.Object);
- return !Eligible;
- }
- catch(err)
- {
- return true;
- }
- }
- function On_EntityDeployed(Player, Entity)
- {
- var subZone1 = World.CreateZone(Player.SteamID + "Zone1");
- var subZone2 = World.CreateZone(Player.SteamID + "Zone2");
- var subZone3 = World.CreateZone(Player.SteamID + "Zone3");
- var subZone4 = World.CreateZone(Player.SteamID + "Zone4");
- subZone1.Mark(Entity.X, Entity.Z);
- subZone1.Mark(Entity.X, Entity.Z+3);
- subZone1.Mark(Entity.X-3, Entity.Z+3);
- subZone1.Mark(Entity.X-3, Entity.Z);
- subZone2.Mark(Entity.X, Entity.Z);
- subZone2.Mark(Entity.X, Entity.Z+3);
- subZone2.Mark(Entity.X+3, Entity.Z+3);
- subZone2.Mark(Entity.X+3, Entity.Z);
- subZone3.Mark(Entity.X, Entity.Z);
- subZone3.Mark(Entity.X, Entity.Z-3);
- subZone3.Mark(Entity.X-3, Entity.Z-3);
- subZone3.Mark(Entity.X-3, Entity.Z);
- subZone4.Mark(Entity.X, Entity.Z);
- subZone4.Mark(Entity.X, Entity.Z-3);
- subZone4.Mark(Entity.X+3, Entity.Z-3);
- subZone4.Mark(Entity.X+3, Entity.Z);
- for(var thisEntity in subZone1.Entities){
- if((Entity.Name == "WoodFoundation" && thisEntity.Name != "WoodFoundation") || (Entity.Name == "MetalFoundation" && thisEntity.Name != "MetalFoundation"))
- {
- if(thisEntity.Name == "WoodBox" || thisEntity.Name == "WoodBoxLarge" || thisEntity.Name == "SleepingBagA")
- {
- Util.DestroyObject(Entity.Object.gameObject);
- Player.Notice("Nie mozesz tu tego postawic");
- }
- }
- }
- for(var thisEntity in subZone2.Entities)
- {
- if((Entity.Name == "WoodFoundation" && thisEntity.Name != "WoodFoundation") || (Entity.Name == "MetalFoundation" && thisEntity.Name != "MetalFoundation"))
- {
- if(thisEntity.Name == "WoodBox" || thisEntity.Name == "WoodBoxLarge" || thisEntity.Name == "SleepingBagA"){
- Util.DestroyObject(Entity.Object.gameObject);
- Player.Notice("Nie mozesz tu tego postawic");
- }
- }
- }
- for(var thisEntity in subZone3.Entities)
- {
- if((Entity.Name == "WoodFoundation" && thisEntity.Name != "WoodFoundation") || (Entity.Name == "MetalFoundation" && thisEntity.Name != "MetalFoundation"))
- {
- if(thisEntity.Name == "WoodBox" || thisEntity.Name == "WoodBoxLarge" || thisEntity.Name == "SleepingBagA")
- {
- Util.DestroyObject(Entity.Object.gameObject);
- Player.Notice("Nie mozesz tu tego postawic");
- }
- }
- }
- for(var thisEntity in subZone4.Entities)
- {
- if((Entity.Name == "WoodFoundation" && thisEntity.Name != "WoodFoundation") || (Entity.Name == "MetalFoundation" && thisEntity.Name != "MetalFoundation"))
- {
- if(thisEntity.Name == "WoodBox" || thisEntity.Name == "WoodBoxLarge" || thisEntity.Name == "SleepingBagA")
- {
- Util.DestroyObject(Entity.Object.gameObject);
- Player.Notice("Nie mozesz tu tego postawic");
- }
- }
- }
- DataStore.Remove("3DZonesList", Player.SteamID + "Zone1");
- DataStore.Remove("3DZonesList", Player.SteamID + "Zone2");
- DataStore.Remove("3DZonesList", Player.SteamID + "Zone3");
- DataStore.Remove("3DZonesList", Player.SteamID + "Zone4");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement