Jump to content
Unity Insider Forum

MoinPeter

Members
  • Content count

    8
  • Joined

  • Last visited

Community Reputation

0 Neutral

About MoinPeter

  • Rank
    Newbie

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Hi, ich mache gerade eine Healthbar für einen multiplayer-Modus in Unity. Ich habe einen UI-Canvas mit Script, wo im Singleplayer die Healthbar in der Ecke angezeigt wird. Im Multiplayer soll diese jedoch deaktiviert und stattdessen über jedem Spieler eine Healthbar angezeigt werden. Allerdings benutzt meine Healthbar ein "Image"-Component (Ich benutze im Script "Image Type: Filled", das gibt's beim Sprite-Renderer leider nicht) und ist daher auf einen Canvas angewiesen. Daher hab ich nun überlegt für jeden Spieler einen Canvas mit Healthbar als Child anzulegen, damit diese ihm folgt. Wie performant ist es so viele Canvas-Objekte zu haben und gibt es einen bessern Weg/ bzw. macht das Sinn? Viele Grüße
  2. MoinPeter

    Jump - schnelleres hochspringen

    Ich danke dir! Richtig cool das du dir die Zeit dafür genommen hast!
  3. MoinPeter

    Jump - schnelleres hochspringen

    Cool, ich danke dir, das würde mir sehr weiterhelfen!
  4. MoinPeter

    Jump - schnelleres hochspringen

    Hi, ich benutze leider keinen Rigidbody, sondern eine berechnete Schwerkraft mit Raycasts aus einem Tutorial (Berechnung der Schwerkraft in der Start-Method).
  5. MoinPeter

    Jump - schnelleres hochspringen

    Hallo, ich möchte für einen 2D-Platformer-Jump mit variabler Jumphöhe das Aufsteigen/Hochspringen des Players schneller machen als das Runterfallen. Allerdings bekomme ich es nicht hin, da man mit der velocity.y den player nur weiter aufsteigen lassen kann, nicht schneller. Kann mir jemand weiterhelfen? Hier der Code: void Start(){ gravity = -(2*maxJumpHeight)/Mathf.Pow(timeToJumpApex,2); maxJumpVelocity = Mathf.Abs(gravity) * timeToJumpApex; minJumpVelocity = Mathf.Sqrt (2 * Mathf.Abs (gravity) * minJumpHeight); } void Update(){ // JUMP if(Input.GetKeyDown(KeyCode.Space) && controller.collisions.below){ velocity.y = maxJumpVelocity; } if(Input.GetKeyUp(KeyCode.Space)){ if(velocity.y > minJumpVelocity){ velocity.y = minJumpVelocity; } } Viele Grüße
  6. MoinPeter

    Player sliden lassen

    Hi, danke für die Antwort. Leider benutze ich keinen Rigidbody sondern Raycasts für den Player. Ich hab es jetzt erstmal so gemacht: void Update() { if (slide) { velocity.x = 20 - value; value = value + 0.3f; } if(Input.GetKeyDown(KeyCode.E)){ if (facingRight) { slide = true; StartCoroutine(WaitforSlide()); } } public IEnumerator WaitforSlide(){ yield return new WaitForSeconds(1f); slide = false; value = 0; } Allerdings kommt mir das ganze noch etwas undynamisch und unkontrollierbar vor. Vorallem kann man den Slide nicht mehrere Male hintereinander einsetzen während man sich gerade in einem befindet, man muss erst warten, bis der aktuelle abgeschlossen ist. Hat jemand noch Verbesserungsvorschläge/ eine Idee für eine bessere Methode?
  7. MoinPeter

    Player sliden lassen

    Sorry ich verstehe nicht ganz was du meinst. Die Spielerfigur soll bei Tastendruck (aus dem Stand raus) nach rechts rutschen und dann exponentiell langsamer werden, bis sie schlussendlich stehen bleibt.
  8. MoinPeter

    Player sliden lassen

    Hi, ich möchte bei einem 2D Sidescroller den Player aus dem Stand sliden lassen. Allerdings hab aber keine Ahnung wie ich das script-technisch lösen soll. Ich habe schon versucht mit Lerp oder SmoothDamp die velocity zu beeinflussen, hab es aber noch nicht hinbekommen. Der Player muss sozusagen bei kurzem Druck auf eine Taste einen kleinen Schubs bekommen und dann langsam in die Richtung sliden, bis er wieder zum Stehen kommt (als ob der Boden aus Eis wäre). Hat jemand eine Idee, wie ich das machen kann? Viele Grüße MP.
×