Unity Space invaders with top 3 players

I’m about to create a simple Space Invaders game but I have a difficulty on it, I have to create like a Top3 weekly, from all the users and get the top three most scored users, this is easy, is a backend task, but I’m wondering if is there any backend for Unity to make it simpler, I know how to create API Rest for many frameworks but I’m used to use Spring, is that good for Unity? If now, what’s better? Is there any library to do an API calls from Unity? Like Retrofit in Android? I’m asking it because I’d like to have like a Log in to game, register etc, but I don’t know if it’s a work of Unity or not, since I need to have the user tracked.

Also I want to export this Space invaders to iOS and Android, is that ok, right? I’ve been looking and Unity facilites to you the export.

Unity 2D: Smooth ease-out movement on grid

I’m trying to create a grid movement in Unity, as where the player will ease-out on a tile when stopping, but I can’t seem to get it right. I need a little nudge in the right direction for how to implement something like this:

Example of how I'd like my movement

I used a coroutine to execute the movement when input is requested and use an ease-out curve to make the player stop smoothly. But, when walking multiple tiles it is jittery because the ease-out is applied. Also, the smoother I want the ease-out to be, the slower the player moves.

protected IEnumerator SmoothMovement(Vector3 endPosition, float duration) {     float elapsed = 0F;     Vector3 startPosition = transform.position;      while (elapsed < duration) {         Vector3 newPosition = Vector3.Lerp(startPosition, endPosition, moveCurve.Evaluate((elapsed/duration)));          rigidBody.MovePosition(newPosition);         elapsed += Time.deltaTime;         yield return null;     } } 

The IEnumerator is called once there’s horizontal or vertical input.

Own movement with high speed

Own movement with low speed and better ease-out

Double Jump not Working on Rotation not working in unity 3d

I am trying double jump on platform.when rotated object come double jump not working in unity.

Hear is my code

private Rigidbody2D rb; public float speed, jumpforces; private float moveinput; private bool isGround,isJumping;

public Transform feetpos; public float checkRadius; public LayerMask whatisGround; private float jumpTimecounter; public float jumpTime;  // Start is called before the first frame update void Start() {     rb = GetComponent<Rigidbody2D>();  }  private void FixedUpdate() {     moveinput = Input.GetAxisRaw("Horizontal");     rb.velocity = new Vector2(moveinput * speed, rb.velocity.y);  } // Update is called once per frame void Update() {     isGround = Physics2D.OverlapCircle(feetpos.position, checkRadius, whatisGround);     if (isGround == true && Input.GetMouseButtonDown(0))     {         isJumping = true;         jumpTimecounter = jumpTime;         rb.velocity = Vector2.up * jumpforces;      }     if (Input.GetMouseButton(0)&& isJumping== true)     {         if (jumpTimecounter > 0)         {             rb.velocity = Vector2.up * jumpforces;             jumpTimecounter -= Time.deltaTime;          }         else         {              isJumping = false;         }      }     if (Input.GetMouseButtonUp(0))     {         isJumping = false;     }  } 


*********************************** 2 method *********************** if (rb.velocity.y == 0) { onTheGround = true; } else { onTheGround = false; } if (onTheGround) { doubleJumpAllowed = true; } if (onTheGround && Input.GetMouseButtonDown(0)) { Jump(); } else if (doubleJumpAllowed && Input.GetMouseButtonDown(0)) { Jump(); doubleJumpAllowed = false; }

Game works perfectly in unity editor but is broken when built (android) [on hold]

So I have 21 scenes, 1 menu and 20 levels. All of this works perfectly in the editor, but when I built it to my android, it breaks completely. When built, the menu works fine, however when I load the first level, I get a black screen and only the ui shows. Also, one button in the gui is supposed to remove a certain part of the gui which doesnt happen. I also have a timer which just keeps adding numbers onto itself, rather than redraw it (Like if you just keep drawing 1,2,3,4 without erasing the previous ones).

On build, I get no errors and only a “Build completed with a result of ‘Succeeded'”. I have previously built games onto my phone without problems, but never with multiple scenes like this one has. I should also mention that all my levels have 3 canvases (which are fully functional in the editor).

Edit: It’s also broken if I start it directly into level1

Appreciate any suggestions to solve this.

Unity Tweak Tool – Schema missing

I installed unity tweak tool through the terminal and whenever i try to run it I get the dialog “the following schema is missing: com.canonical.indicator.bluetooth. I tried to look online for solutions but it was mostly people who had different type of schemas missing. I even installed the packages they recommended but it didn’t do anything. I anybody knows how to solve this particular problem it would be much appreciated. Thank you.

How to create a custom set of coordinates based on two points in Unity?

As the title says, I am having problems finding a way to create a new set of local coordinates based on two points. Here is an example:

enter image description here

Consider that the two gameObjects are not one parent of another, therefore I cannot use something like transform.localPosition, furthermore I tried using transform.TransformPoint(), however the latter works only if if I want to create it with respect to a single point. I think it is a silly question, yet I am not finding a way to solve it, so any help is greatly appreciated!

How can I devolve Custom List(Game-object) inspector same as unity?

I need to

  1. drag and drop GameObject to ObjectField.

  2. drag and drop a group of GameObjects to list name.

The main problem is either do 1 or 2 work. I need the function same as unity List Inspector for future devolvement. Code as follow.

static SerializedProperty ThisList; public override void OnInspectorGUI() {     ThisList = serializedObject.FindProperty("G");//List name call G     serializedObject.Update();     Show(ThisList);     serializedObject.ApplyModifiedProperties(); }  public static void Show(SerializedProperty list) {     EditorGUILayout.PropertyField(list);     EditorGUI.indentLevel += 1;     if (list.isExpanded)     {         EditorGUILayout.PropertyField(list.FindPropertyRelative("Array.size"));         ShowElements(list);     }     EditorGUI.indentLevel -= 1;      }   private static GameObject[] a =new GameObject[50000]; private static void ShowElements(SerializedProperty list) {     //This code can drag and drop GameObject to ObjectField.     for (int i = 0; i < list.arraySize; i++)     {         list.GetArrayElementAtIndex(i).objectReferenceValue = EditorGUILayout.ObjectField("OBj", list.GetArrayElementAtIndex(i).objectReferenceValue, typeof(GameObject));     }       //This code can drag and drop a group of GameObjects to list name.     if (Event.current.type == EventType.DragUpdated)     {         DragAndDrop.visualMode = DragAndDropVisualMode.Copy;         Event.current.Use();     }     else if (Event.current.type == EventType.DragPerform)     {                   for (int j = 0; j < DragAndDrop.objectReferences.Length; j++)         {             a[j] = (DragAndDrop.objectReferences[j] as GameObject);         }         Event.current.Use();     } } 

However, it not work when both codes together.

If -> EditorGUILayout.PropertyField(list, true); I can get the same result as the unity function. but I cant Custom the List. (such as add name, change position, add button…)