Jump to content
Unity Insider Forum

JS zu C++


kevios105

Recommended Posts

Hallo,

ich hab da einmal eine Frage und zwar könnte mir jemand ein Script von JS zu C++ machen? Oder mir zumindest dabei helfen?
Ich hab große Schwierigkeiten es in C++ umzuschreiben und wenn mir jemand dies machen könnte bzw. mir helfen könnte (ich nehme an das dies auch nicht all zu schwer wäre für ein geübten C++ Programmierer), wäre ich:

1. sehr sehr Dankbar und
2. könnte ich dann die Codes vergleichen und daraus lernen.

Ich möchte hier nicht meine "Arbeit" auf andere ablagern also bitte nicht falsch verstehen.
Das Script funktioniert wunderbar in JS aber damit ich es weiterverarbeiten kann mit Invector und den anderen Addons bzw. Assets wäre es schon sehr sinnvoll es in C++ zu haben.
Ich bin Beginner aber gebe mein bestes alles irgendwie alleine hinzubekommen, da dies mir auch am meisten Spaß macht für ein Problem eine Lösung zu finden und ich habe mir mit dem JS Script viel mühe gegeben nur komme ich jetzt nicht mehr weiter da ich es in C++ bräuchte wie bereits erwähnt.

var Player : Transform; 
var rotationSpeed = 3; //speed of turning

var myTransform : Transform; 
var ragdoll : GameObject;
var agent : UnityEngine.AI.NavMeshAgent;//current transform data of this enemy
var isNotDead : boolean = true;
var distance : float = 3.0f;
var followDistance : float = 10f;


function Awake()
{
    myTransform = transform; //cache transform data for easy access/preformance
}

function Start()
{
      agent = GetComponent.<UnityEngine.AI.NavMeshAgent>();

}

function Update () {

	if(isNotDead){
	
	    //rotate to look at the player
	    var distance = Vector3.Distance(Player.position, myTransform.position) ;
	    if (distance < followDistance) {
	    	Froze = true;
	        GetComponent.<Animator>().Play("Idle");
	    }
        
	    else{   
	    	//move towards the player
	    	Froze = false;
	   		agent.SetDestination(Player.position);
	   		GetComponent.<Animator>().Play("Walk");
	   		myTransform.rotation = Quaternion.Slerp(myTransform.rotation,
	    Quaternion.LookRotation(Player.position - myTransform.position), rotationSpeed*Time.deltaTime);
	
	    }
	}
}

Ich kann es nachvollziehen wenn es niemand dem annehmen will ... =/

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Du meinst C#, oder?

C++ könnte mit Unity schwer werden..

 

JS in C# zu konvertieren ist eigentlich kein großes Problem, solange man weiß, wie man in C# Variablen deklariert. ( ..und z.B. 'void' statt 'function' )

public Transform Player; 
public float rotationSpeed = 3; //speed of turning
public GameObject ragdoll;
public float distance = 3.0f;
public float followDistance = 10f;
public bool isNotDead = true;

private Transform myTransform; 
private UnityEngine.AI.NavMeshAgent agent : ;//current transform data of this enemy

void Awake()
{
    myTransform = transform; //cache transform data for easy access/preformance
}

void Start()
{
      agent = GetComponent<UnityEngine.AI.NavMeshAgent>();

}

void Update () {

	if(isNotDead){
	
	    //rotate to look at the player
	    var distance = Vector3.Distance(Player.position, myTransform.position) ;
	    if (distance < followDistance) {
	    	Froze = true;
	        GetComponent<Animator>().Play("Idle");
	    }
        
	    else{   
	    	//move towards the player
	    	Froze = false;
	   		agent.SetDestination(Player.position);
	   		GetComponent<Animator>().Play("Walk");
	   		myTransform.rotation = Quaternion.Slerp(myTransform.rotation,
        	Quaternion.LookRotation(Player.position - myTransform.position), rotationSpeed*Time.deltaTime);
	    }
	}
}

 

Nicht getestet, hoffe ich hab alles erwischt..

Wenn was nicht stimmt sagt dir Unity was falsch ist..

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...