Jump to content
Unity Insider Forum

Skriptübergreifend


Frittenschreck

Recommended Posts

Hallo,

da ich noch ein Neuling auf diesen Gebiet bin erstelle ich kleine Skripts. Zb. 1 Ball fällt runter und er soll 

wieder zurückgesetzt werden. oder ein neuer Bildschirm soll geladen werden...und nun meine  Frage,

kann ich von einen Skript aus ein anderes aufrufen? Ich versuche mich in Java....das lerne ich in einen 

Fernkurs...Vielen Dank im vorraus

LG 

Fritte

Link zu diesem Kommentar
Auf anderen Seiten teilen

Java?

Ich denke du meinst Javascript

MyScript.js

public var otherScript : MyOtherScript;

function Start(){
	otherScript.foreignFunction();
}

 

MyOtherScript.js

public function foreignFunction(){
Debug.Log("foreignFunction called");
}

 

Wenn du nun MyScript.js auf ein GameObject ziehst solltest du eine Feld mit dem Namen "Other Script" sehen dort musst du nun das GameObject auf dem MyOtherScript.js liegt ziehen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Du kannst andere Skripte ansteuern indem du dir eine Referenz (ein Objekt) holst. Hat ein GameObject, das in unserem beispiel "Court" heißt, ein Script das "Ball.cs" heißt,  kann du dir dieses z.B. folgend holen:

public GameObject court; // im Inspector zu befüllen

private void doSomething(){
  
	Ball ball = (Ball) court.getComponent<Ball>(); // Jetzt habe ich meine referenz
  	ball.roll(); // Meine referenz macht irgendwas
  
}

 

Außerdem hier nachzulesen:

https://docs.unity3d.com/ScriptReference/GameObject.GetComponent.html

 

Als ich mich vor meiner Programierzeit mal mit Unity beschäftigt habe, hatte ich ein komplett falsches Bild vom Skriptsystem in Unity. Eventuell gehts dir ja ähnlich. Darum würde ich dir raten erstmal noch ein bissl Java zu lernen, wenn du sowieso schon dabei bist. 4-6 Wochen werden da schon Wunder wirken (meine Erfahrung).

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 6 Stunden schrieb Sneyke:

Du kannst andere Skripte ansteuern indem du dir eine Referenz (ein Objekt) holst. Hat ein GameObject, das in unserem beispiel "Court" heißt, ein Script das "Ball.cs" heißt,  kann du dir dieses z.B. folgend holen:


public GameObject court; // im Inspector zu befüllen

private void doSomething(){
  
	Ball ball = (Ball) court.getComponent<Ball>(); // Jetzt habe ich meine referenz
  	ball.roll(); // Meine referenz macht irgendwas
  
}

 

Außerdem hier nachzulesen:

https://docs.unity3d.com/ScriptReference/GameObject.GetComponent.html

 

Als ich mich vor meiner Programierzeit mal mit Unity beschäftigt habe, hatte ich ein komplett falsches Bild vom Skriptsystem in Unity. Eventuell gehts dir ja ähnlich. Darum würde ich dir raten erstmal noch ein bissl Java zu lernen, wenn du sowieso schon dabei bist. 4-6 Wochen werden da schon Wunder wirken (meine Erfahrung).

 

Hast Du da ein Buch dass Du mir empfehlen kannst?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Java lernen schadet nicht, aber so als Hinweis: C# ist fast dasselbe wie Java. Kannste das eine, ist das andere ein Klacks. Allerdings gibt es dennoch feine Unterschiede, die für eine Menge Verwirrung sorgen können. Es wäre daher auch eine Idee, stattdessen ein C#-Buch (gerne auch ohne Unity-Kontext) in die Hand zu nehmen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Für C# generell habe ich mir mal das hier besorgt:

https://www.amazon.de/Visual-Studio-2015-Objektorientierung-Programmiertechniken/dp/3836237148/ref=sr_1_1?ie=UTF8&qid=1500966151&sr=8-1&keywords=c%23+buch

Ich finde es gut beschrieben und ist auch für Anfänger geeignet, da sehr viel erklärt wird. Auch geht es später mehr auf Professionelle Sachen ein.

 

 

Mit diesem Buch hier habe ich mich in Java eingebarbeitet (Das wurde uns in der Ausbildung gestellt):

https://www.amazon.de/Java-von-Kopf-bis-Fuß/dp/3897214482/ref=sr_1_1?s=books&ie=UTF8&qid=1500966231&sr=1-1&keywords=java+von+kopf+bis+fuß

Wobei ich hier aber sagen muss dass mir es nicht tief genug ging. Es ist daher wirklich nur für Anfänger. Aber um die wIchtigsten Sachen mal angekratzt zu haben, gibts von mir ne klare Empfehlung. Falls du gleich ein wenig Professioneller gehen willst:

https://www.amazon.de/Java-auch-eine-Insel-Java-Entwickler/dp/3836241196/ref=sr_1_2?s=books&ie=UTF8&qid=1500966492&sr=1-2&keywords=Java+buch+rheinwerk

Ich habe das Buch aber nicht gelesen. Da ich aber davon ausgehe, dass das Niveau ähnlich dem C# Buch sein wird, habe ich es hier mal aufgelistet.

 

Für Unity wird/wurde hier im Forum dieses hier empfohlen:

https://www.amazon.de/Spiele-entwickeln-mit-Unity-3D-Games/dp/3446451978/ref=sr_1_1?s=books&ie=UTF8&qid=1500966267&sr=1-1&keywords=Unity+5.6

Wobei ich hier aber keine Erfahrung habe, da ich Unity über Google lerne.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

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

×
×
  • Neu erstellen...