A szkript kölcsönhatás fejlett megszervezése

Általánosságban létezik (lesz) egy játék: egy kör alapú stratégia az űrkutatók típusa szerint. Van egy játékos, aki lefedi a forgatókönyvet a pályán. És ott lóg a mozgás kezdetén a "tér" gombon. És ugyanabban a szkriptben vannak a menetszámlálási mozdulatok (vagy ha hirtelen van egy hiba és egy gomb a szkriptek egyikében, akkor nem lesz desync). És sokkal több lesz hozzá. Kihasználtam a gyönyörű draw.io eszközt, és rájöttem, hogy minél tovább, annál bonyolultabb lesz a játékom terve.

Egy lépésről-lépésre kozmikus RPG-t fejlesztek a Space Rangers - Stardust stílusában.

Őszintén, tapasztalat nélkül, mintha nem magyaráznánk / rágnánk, vseravno jönnek bebelberda, amit több száz alkalommal újra készítenek.
Kezdje az OOP-ot.

Annak érdekében, hogy átírja százszor egy szemetet, először meg kell írnia ezt a szemetet. Jelen pillanatban csak meg kell értenem, hogyan lehet a legegyszerűbb eseményeket rendezni, miközben foglalkozom vele, és az OOP jobban meg fogja érteni. Természetesen továbbra is mindent megteszek a normál referenciákon, de akkor mind nagyon nehéz lesz felújítani, jobb, ha a helyes irányba menni, jóllehet rossz végrehajtás.

Egy lépésről-lépésre kozmikus RPG-t fejlesztek a Space Rangers - Stardust stílusában.

ArXen42 írta: Ó, sok új szó, köszönöm, megyek tanulni.
A "szokatlan kifejezések" azért hasznosak, mert azok a Google-ban is értékelhetők, és nem szűrhetnek több száz oldalt ugyanolyan típusú kérdésekben, mint például az egyik szkriptről a másikra való bejutás.


Nos, akkor időt veszítesz ezen a fórumon.

például egy parancsfájltól a másikig.


. akkor sem tudod, hogyan kell létrehozni az összetevők közötti kapcsolatot, így az "új szavak" nem segítenek itt.

Jobb lépni a kis lépcsőktől az egyszerűtől a komplexig, átugrani, ha kijön, akkor a szakadék még mindig ott lesz. Ne bonyolítsa, ne temesse el magát előre

Megértésem szerint mindegyik összetevő egy MonoBehaviour által örökölt osztály, amely különböző módszereket / struktúrákat / változókat tartalmaz stb. Legalább a felkérés az osztályhoz tartozik. Körülbelül megérteni, mi a GetComponent<>() (az én Noob megértésében lehetővé teszi, hogy kölcsönhatásba lépj egy adott osztály (komponens) egyedi példányával), és hogy a szkriptek is összetevők. A "nem túl közel" megértését még mindig akadályozza a PFSZ rossz ismerete, a tanulmányok folyamata.

Egy lépésről-lépésre kozmikus RPG-t fejlesztek a Space Rangers - Stardust stílusában.

egyetértek a fenti megjegyzésekkel, mindent összegyűjtöttek apránként, és csak pattintsa az ujjait és kap egy játékot - ez nem így működik!

de általában az események kivételével vannak olyan minták, amelyek nagyban segítenek Önnek.

belső osztály SomeComponent. MonoBehaviour
# 123;
nyilvános esemény EventHandler Clicked;

privát érvénytelen OnClick # 40; # 41;
# 123;
ha # 40; Clicked! = Null # 41;
Kattint. Indítsunk # 40; ezt. EventArgs. üres # 41; ;
# 125;

privát érvénytelen OnMouse # 40; # 41; // Vagy hogyan van ott
# 123;
// Néhány logika
//.

belső osztály SomeSubscriber. MonoBehaviour
# 123;
privát érvénytelen Start # 40; # 41;
# 123;
var someComponent = GameObject. talál # 40; "SomeObj" # 41;. GetComponent # 40; # 41; ; Nem kell ezt csinálnod, de egy példa,
someComponent. Clicked + = OnClicked;
# 125;

privát érvénytelen OnDestroy # 40; # 41;
# 123;
var someComponent = GameObject. talál # 40; "SomeObj" # 41;. GetComponent # 40; # 41; ;
someComponent. Clicked - = OnClicked;
# 125;

privát érvénytelen OnClicked # 40; objektum feladó, EventArgs e # 41;
# 123;
Debug. Bejelentkezés # 40; "Kattintva" + ezt. név # 41; ;
# 125;
# 125;

Ezen túlmenően az egységeknek saját eseményei vannak az EventSystemon keresztül, vagy bármi, ami ott van. De nem mentem bele, még nem volt szükségem rá.

Ui köszönöm, hogy aztán elküldtem, tehát szükség volt)

Egy lépésről-lépésre kozmikus RPG-t fejlesztek a Space Rangers - Stardust stílusában.