Jump to content
Unity Insider Forum
Sign in to follow this  
Damian izz back

Finde die Fehlerquelle nicht

Recommended Posts

Guten Tag

Ich habe ein wahrscheinlich typisches Anfängerproblem. Ich habe versucht mir ein bewegungscript für meinen Spielcharakter zu programmieren, aber es tauchen Fehler auf die mich nicht in den Gamemode rein lassen. Mein eigentliches Problem sind die Errors CS1061 (2x) und Error CS0029. Wahrscheinlich habe ich etwas übersehen, aber wenn ich die Empfehlungen von Visual Studio einhalte, gibt es nur noch mehr Fehler 😕 Was kann ich dagegen tun? Bin ein wenig aufgeschmissen :(. 

 

Hier ist der Code:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Player : MonoBehaviour
{

    private Animator anim;
    private CharakterController controller;
    public float speed = 6.0f;
    public float turnSpeed = 60.0f;
    private Vector3 moveDirection = Vector3.zero;
    public float gravity = 20.0f;


    // Start is called before the first frame update
    void Start()
    {
        anim = gameObject.GetComponentInChildren<Animator>();
        controller = GetComponent<CharacterController>();

    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKey("right"))
        {
            anim.SetInteger("AnimPar", 1);
        }
        else
        {
            anim.SetInteger("AnimPar", 0);
        }

        if (controller.isGrounded)
        {
            moveDirection = transform.forward * Input.GetAxis("Vertical") * speed;
        }

        float turn = Input.GetAxis("Horizontal");
        transform.Rotate(0, turn * turnSpeed * Time.deltaTime, 0);
        controller.Move(moveDirection * Time.deltaTime);
        moveDirection.y -= gravity * Time.deltaTime;


    }

}


 

Würde mich über eine hilfreiche Antwort sehr freuen :D

Gruss 

Damian

 

Edited by Sascha
Code-Formattierung

Share this post


Link to post
Share on other sites

Ich war mal so frei und hab deinen Code als Code eingefügt. Mach das mal bitte nächstes Mal selber mit dem guten <>-Knopf.

Bei Fehlermeldungen wäre es schön, wenn du die Zeilennummer mitschreibst, und am besten auch die Nachricht der Meldung - wir können hier nicht alle C#-Fehlercodes auswendig :)

Beim eigenständigen Suchen hilft dir deine IDE. Die würde nämlich direkt in Zeile 9 das Wort

CharakterController 

rot unterstreichen, weil der mit C geschrieben wird ;)

Share this post


Link to post
Share on other sites

Du musst unterscheiden zwischen Refactorings, die er dir anbietet, und Fehlerbehebungen. Methode extrahieren ist nicht zum Beheben von Fehlern, sondern zum Aufräumen des Codes. Und nur, weil die Zeile gerade nen Fehler angezeigt bekommt, hört er ja nicht auf dir dafür Optionen anzubieten.

Wo der Fehler ist habe ich dir ja schon gesagt. Du hast aber offenbar tatsächlich ein eigenes Script mit dem Namen "CharakterController" irgendwo rumliegen, darum wird das Wort in Zeile 9 nicht rot unterstrichen. Du kannst aber ja nicht eine Variable vom Typ CharakterController haben und dann da einen CharacterController reinpacken. Sind ja zwei unterschiedliche Sachen. Fix also einfach mal Zeile 9.

Share this post


Link to post
Share on other sites

Was passiert wenn du deine Charakter Controller Variable public machst und den Charakter Controller manuell im Inspector deiner Variable zuteilst.

So könnte man unterscheiden ob der Fehler am Charakter Controller selbst liegt oder am Code.

 

Oder das was Sascha sagt das macht mehr Sinn xD

Share this post


Link to post
Share on other sites

Vielen Dank für eure Hilfe, aber das Problem hat sich komischerweise von alleine gelöst :O...

Aber nun stehe ich woanders an... aber das werde ich in einem eigenen Beitrag fragen.

Gruß

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...