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 Pyrospastiac · Aug 11, 2013 at 01:16 PM · moveclickstrategyturnbased

How do I move objects in one executed turn?

I'm trying to make a turn based strategy game but not the kind where players take turns making their moves, but rather, everyone plots their pieces movements while the game is paused then all commands are executed for all players simultaneously.

My question is how can i give a move command to each of my units individually that won't execute immediately but rather when i click some sort of "take turn" button?

additionally the script should pause the game after all the pieces have moved to allow for the next turn to begin if possible.

I know it's really multiple questions in one but I appreciate all responses even if you only know how to partially answer my question.

Thanks everyone.

Comment
Add comment
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

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by spectre1989 · Aug 11, 2013 at 01:59 PM

Sounds like Frozen Synapse =)

What you need is a script which holds a series of commands, which can then be executed. You could do this with an array, but given that there would likely be lots of adding and deleting of commands, I'd advise using a List. You could then use a coroutine to execute the commands. So you might have something a bit like this:

 public class Unit : MonoBehaviour
 {
    private List<Command> commands;
    public float movementSpeed;
 
    public void Awake()
    {
       this.commands = new List<Command>();
    }
    
    // This would be called by whatever script is interpreting user input
    public void AddCommand( Command command )
    {
       this.commands.Add( command );
    }
 
    public IEnumerator ExecuteCommands()
    {
       foreach( Command command in this.commands )
       {
          this.transform.position = this.transform.position + ( command.position - this.transform.position ).normalized * this.movementSpeed * Time.deltaTime;
          yield return null;
       }
    }
 }

Note that in that code snippet, it assumes a command just contains a position for now, and it doesn't even detect when that position has been reached so it'll actually stay stuck on the first Command. But you get the idea!

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

15 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

Related Questions

Square Based Movement 2 Answers

Click-to-move problems, mouse cursor moving 3 Answers

Move object towards mouse but if mouse moves object fallows it's original path 0 Answers

Move to a clicked point? 1 Answer

GameObject automatically moves up when upgrade is purchased. 2 Answers


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