Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by Machinimanetau · Aug 15, 2013 at 09:05 PM · spaceairrooms

How to create air in the rooms

I'm working on a Sci fy space simulator project right now and I was wondering how I can create rooms filled with air, I mean if that room is going to be damaged or destroyed the air is supposed to leak and then the room is no longer accessible. I was thinking about using triggers but triggering all rooms in the whole spaceship is a mess. Is there any method that I can use to simulate air in my rooms?

Comment
Add comment · Show 4
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image tw1st3d · Aug 15, 2013 at 09:06 PM 1
Share

Just write the code for it, using Time.deltaTime to gradually decrease your air variable.

avatar image Machinimanetau · Aug 15, 2013 at 09:15 PM 0
Share

But how can I know if this room has air in it or not?

avatar image Jonathon82931 · Aug 15, 2013 at 09:39 PM 0
Share

by making air into a variable in a script and making the room inacessable if the air variable is = to 0

avatar image Jonathon82931 · Aug 15, 2013 at 09:42 PM 0
Share

you can learn how to do this by going to this link and watching the tutorials and if that's not enough tutorials then youtube also has some excellent tutorials for scriptinglink text

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by Spherical Cow · Dec 09, 2013 at 01:47 PM

Here is a super simple example, hope it helps.

 using UnityEngine;
 using System.Collections;
 
 public class LeakingAir : MonoBehaviour {
 
         public float  airEscapeRate;                        // How quickly the air can escape.
         public float percentOfAir;                            // How much air is in the room.
         public bool roomIsAccessible;                        // Can the room be accessed?
         public bool roomIsDamaged;                            // Is the room damaged?
 
         float airLeakTimer;                                    // The counter that removes air from the room.
 
         float setAirLeakTimer = 100;                        // The amount of air in the room to begin with. 
                                                             // At 100 it will register 100% full.
 
     void Awake(){
 
         roomIsAccessible = true;                            // To start the room can be accessed
         roomIsDamaged = false;                                // and the room is not damaged
 
         airLeakTimer = setAirLeakTimer;                        // Sets the timer. By setting the value in this way 
                                                             // it would be possible to easily "fix" the room
                                                             // by resetting the airLeakTimer to the setAirLeakTimer.
 
     }
 
     void Update(){
 
         percentOfAir = (airLeakTimer / 100) * 100;            // Shows percentage of air in room.
 
         if(roomIsDamaged)                                    // When the room gets damaged
             airLeakTimer -= Time.deltaTime * airEscapeRate;    // the timer starts and is accelerated by airEscapeRate
 
         if(airLeakTimer <= 0)                                // Makes sure the percentage doesn't do into the negative.
             airLeakTimer = 0;
 
         if(percentOfAir <= 0)                                // Checks how much air is in the room, if there is none
             roomIsAccessible = false;                        // makes the room inaccessable.
 
     }
 
 }
Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

18 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

AirPlane Script? 2 Answers

How can I create an atmosphere/oxygen system in my 3d space game. 1 Answer

Air volume and flow between rooms like FTL 2 Answers

Addforce lasting 1 frame 1 Answer

How to Buffet an object floating in space? 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges