slott
|
  |
| Joined: 23 Sep 2010 |
| Total Posts: 2640 |
|
|
| 23 Aug 2015 10:00 AM |
I am slott. I am new to ROBLOX scripting and I would ask for some help. I am making a tycoon (boring I know) but I wanted to add a aspect of the WALLS gamemode in minecraft, players will have a limited amount of time to buy their tycoon before going into war! I like this idea. I have made the tycoons and I just need some help on how to make the walls disapear over like... 5 minutes? and stay that way for another 5 minutes, and continue doing this in a loop. Thank you.
- It's not a bug - It's a feature - |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 10:05 AM |
| OK, so you want the walls to stay visible for 5 minutes, and then disappear for 5 minutes in a loop? |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 10:07 AM |
while wait(5*60) do wall.Transparency = 1 wall.CanCollide = false wait(5*60) wall.Transparency = 0 wall.CanCollide = true end |
|
|
| Report Abuse |
|
|
slott
|
  |
| Joined: 23 Sep 2010 |
| Total Posts: 2640 |
|
|
| 23 Aug 2015 10:07 AM |
That's correct
- It's not a bug - It's a feature - |
|
|
| Report Abuse |
|
|
slott
|
  |
| Joined: 23 Sep 2010 |
| Total Posts: 2640 |
|
|
| 23 Aug 2015 10:08 AM |
Thank you so much! And ~LimitedHex, I want the walls to have a transparency of .5 to do that in the "wall.Transparency = 1" do i replace 1 with ".5"?
- It's not a bug - It's a feature - |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 10:12 AM |
| @Slott Yes, it's as easy as that. |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 10:13 AM |
Tested this, worked for me.
local wall = script.Parent while wait() do wall.Transparency = 1 wall.CanCollide = false wait(300) wall.Transparency = 0 wall.CanCollide = true wait(300) end
|
|
|
| Report Abuse |
|
|
slott
|
  |
| Joined: 23 Sep 2010 |
| Total Posts: 2640 |
|
|
| 23 Aug 2015 10:15 AM |
@8BitRetroGamer, I'm asuming at the "local wall" - the part that the script inside has to be called wall? also, will this work with several walls?
- It's not a bug - It's a feature - |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 10:16 AM |
| This will only work with 1 wall, but it could be a union? |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 10:18 AM |
Okay, I'm gonna make a new script for you that you can put inside the walls that you want it to work with.
while wait(5*60) do script.Parent.Transparency = 1 script.Parent.CanCollide = false wait(5*60) script.Parent.Transparency = 0 script.Parent.CanCollide = true end
Just put that inside all your walls and it should be working. |
|
|
| Report Abuse |
|
|
slott
|
  |
| Joined: 23 Sep 2010 |
| Total Posts: 2640 |
|
|
| 23 Aug 2015 10:18 AM |
and... put the script into the union? + does the union need to be called wall?
- It's not a bug - It's a feature - |
|
|
| Report Abuse |
|
|
slott
|
  |
| Joined: 23 Sep 2010 |
| Total Posts: 2640 |
|
|
| 23 Aug 2015 10:22 AM |
Thanks so much! Will this script loop? So the walls will go back to being non cancolide?
- It's not a bug - It's a feature - |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 10:38 AM |
For your first question, No. What local does is it basically labels things so you can easily access them (without changing their name)
if I weren't to add the local wall = script.Parent, then for every line that I call "wall" I would have to do script.Parent instead, which would take longer to do. local's basically helps you with scripting, and helps you get things done quicker.
To answer your second question, No, this doesn't activate multiple walls, however you can adapt it to activate all the doors at once by doing this:
local model = game.Workspace.Model while wait() do for i,p in pairs(model:GetChildren()) do if p.Name == "wall" then p.CanCollide = false p.Transparency = 1 end end wait(300) for i,p in pairs(model:GetChildren()) do if p.Name == "wall" then p.CanCollide = true p.Transparency = 0 end end wait(300) end
"model" is the model that contains the walls. You can easily change this to something else, so you could change it to "local model = game.Workspace.Tycoon.Walls"
also, this will only work if a wall you want to make disappear is called "wall" |
|
|
| Report Abuse |
|
|
slott
|
  |
| Joined: 23 Sep 2010 |
| Total Posts: 2640 |
|
|
| 23 Aug 2015 10:40 AM |
Thank you so much. This forum is much nicer than RT xD. Final question... I want the map to restart after the 10 minutes, the 5 minute tycoon build time, and 5 minute FIGHT time! After these 10 minutes I want the whole map to restart... Everything back to the way it was... I think this should be easy.. But if its not I can just leave them after the first 5 mins to have unlimited fight time.
- It's not a bug - It's a feature - |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 10:47 AM |
That one i think you'd have to take up with a more advanced scripter than me
When you say you want the whole map to restart, do you just mean you want what would be considered debris to be cleared, or do you basically want all the parts in the map to respawn? |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 10:49 AM |
@slott if you can save a copy of the map in serverstorage, or lighting
wait(10*60) local map = game.ServerStorage.Map:Clone() --or game.Lighting.Map for i,v in pairs(game.Workspace:GetChildren()) do v:remove() end map.Parent = game.Workspace |
|
|
| Report Abuse |
|
|
slott
|
  |
| Joined: 23 Sep 2010 |
| Total Posts: 2640 |
|
|
| 23 Aug 2015 10:52 AM |
I want everything to be destroyed, then regenerate as they first where - as a new player first joined the server. I want my game to have an aspect of rounds
- It's not a bug - It's a feature - |
|
|
| Report Abuse |
|
|
slott
|
  |
| Joined: 23 Sep 2010 |
| Total Posts: 2640 |
|
|
| 23 Aug 2015 10:53 AM |
@robloxer, after I put a copy of the map in lighitng - where do I put the script you sent? In the model in lighting? or in workspace?
- It's not a bug - It's a feature - |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 11:06 AM |
@slott you can put the script wherever you want |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 11:07 AM |
| Also, I reccommend using ServerStorage, because this is what ServerStorage was made for. |
|
|
| Report Abuse |
|
|
slott
|
  |
| Joined: 23 Sep 2010 |
| Total Posts: 2640 |
|
|
| 23 Aug 2015 11:12 AM |
I have credited you all in my game.
- It's not a bug - It's a feature - |
|
|
| Report Abuse |
|
|
slott
|
  |
| Joined: 23 Sep 2010 |
| Total Posts: 2640 |
|
|
| 23 Aug 2015 11:21 AM |
Finally, if anyone here can help me (which I doubt can) - because this is a lot to ask for... Can you make a script that will teleport people to their spawners after 6 players have sucsessfully joined the game? Like teleport team RED to certain co-ordinates.I want like a waiting room to wait for 6 players to join. Also, I would need everything else to wait for the 6 players to join, including the walls. I know this is a lot to ask for - but if anyone has a clue to do this - I would be most grateful. Thank you for all you've done :)
- It's not a bug - It's a feature - |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 11:35 AM |
@slott, set all of those scripts to disabled now make another script and put this in there
--robloxer8282 x = 0 game.Players.PlayerAdded:connect(function() x = x + 1 if x >= 6 then --Now, put the directory from the game to the script below --Then add .Disabled = false --For example, game.Workspace.wall.Script.Disabled = false game.Workspace.wall2.Script.Disabled = false -- now, just keep adding these. end end)
|
|
|
| Report Abuse |
|
|
slott
|
  |
| Joined: 23 Sep 2010 |
| Total Posts: 2640 |
|
|
| 23 Aug 2015 11:54 AM |
Where does this script go? Workspace?
- It's not a bug - It's a feature - |
|
|
| Report Abuse |
|
|
|
| 23 Aug 2015 11:56 AM |
| put it wherever you want, it doesn't really matter.. |
|
|
| Report Abuse |
|
|