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 LifeSymbiont · Jun 24, 2015 at 01:25 PM · worldchar

A spinning char problem

Hi everyone, I got a little problem with my current game... When I press the move buttons, my char doesnt move, but for that, its like he makes spins the World around and himself is allways in the middle... (Sorry for my bad english, I am an Austrian one ^^) How ever, maybe someone can help me, heres the script.

 #pragma strict
 public var JumpHeight = 0;
 public var moveSpeed = 0;
 public var maxJumps = 0;
 private var numJumps = 0;
 
 function Start () {
 
 }
 
 function Update () {
     var x;
     var y;
 
     if(Input.GetKeyDown(KeyCode.Space) && CanJump()) {
     x = GetComponent(Rigidbody).velocity.x;
     
     GetComponent(Rigidbody).velocity = new Vector2(0, JumpHeight);
     
     ++numJumps;
 }
     
     if (Input.GetKey (KeyCode.A)) {
     y = GetComponent(Rigidbody).velocity.y;
     
     GetComponent(Rigidbody).velocity = new Vector2(-moveSpeed, y);
 }
 
     if (Input.GetKeyDown (KeyCode.D)) {
     y = GetComponent(Rigidbody).velocity.x;
     
     GetComponent(Rigidbody).velocity = new Vector2(moveSpeed, y);
 
     }
 }
 
 function OnCollisionEnter (coll : Collision) {
     if (coll.gameObject.CompareTag("Ground")) {
         numJumps = 0;
         
         }
     }
     


 function CanJump() {
     return numJumps < maxJumps;
 }

and here is an Image: alt text

Any help would be VERY great :)

wut.png (4.9 kB)
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 Magnomous · Jun 24, 2015 at 01:57 PM 0
Share

I am not sure whether I understand you, but would this work for you?

  #pragma strict
  public var JumpHeight = 0;
  public var moveSpeed = 0;
  public var maxJumps = 0;
  private var numJumps = 0;
  
  function Start () {
  
  }
  
  function Update () {
      var x;
      var y;
  
      if(Input.Get$$anonymous$$eyDown($$anonymous$$eyCode.Space) && CanJump()) {
      x = GetComponent(Rigidbody).velocity.x;
      
      GetComponent(Rigidbody).velocity = new Vector2(0, JumpHeight);
      
      ++numJumps;
  }
      
      if (Input.Get$$anonymous$$ey ($$anonymous$$eyCode.A)) {
      
      
      transform.position.x -= moveSpeed * Time.deltaTime;
  }
  
      if (Input.Get$$anonymous$$ey($$anonymous$$eyCode.D)) {
      
      
      transform.position.x += moveSpeed * Time.deltaTime;
  
      }
  }
  
  function OnCollisionEnter (coll : Collision) {
      if (coll.gameObject.CompareTag("Ground")) {
          numJumps = 0;
          
          }
      }
      
  
  
  function CanJump() {
      return numJumps < maxJumps;
  }
avatar image LifeSymbiont · Jun 24, 2015 at 05:57 PM 0
Share

lol, that was very helpfull =) !! It just worked fine :D But now there is another problem... The ground you see on the picture is a 3D cube, I can move arround just fine, but when i get to the corned of the " Planet " the same is happening again... With the spinning in air I mean :/ Some kind of Gravity system could be nice :O

avatar image LifeSymbiont · Jun 24, 2015 at 06:00 PM 0
Share

alt text

Here you can see the char just falling down D:

wut-1.png (28.9 kB)
avatar image Magnomous · Jun 24, 2015 at 06:08 PM 0
Share

I am not sure whether using rigidbody is a wise choice. Rigidbody simulates realistic physics, but that is not something you want. $$anonymous$$aybe you should use Character Controller ins$$anonymous$$d. And use controller.$$anonymous$$ove() method to move your character. And using .isGrounded check whether your character is, well, grounded. If not, use $$anonymous$$ove() method with Vector.down parameter to make it fall without spinning.

0 Replies

· Add your reply
  • Sort: 

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

3 People are following this question.

avatar image avatar image avatar image

Related Questions

Get position of the centre of each grid tile 1 Answer

MMORPG Scripting Ideas 1 Answer

Defining a local spawn offset 1 Answer

Rotating world/player 1 Answer

[C#|JS] GPS Routes? 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