Det finns inte en enda "uppdragsoperatörskod" i GameMaker Studio 2 (GMS2) specifikt för att skapa instanser på muspositionen när ett musklick inträffar. Istället kombinerar du flera element:
1. `instans_create_layer ()`: Detta är den funktion du använder för att skapa instanser. Det har inte ett "uppdrag" i betydelsen "x =5", men det är kärnan i att skapa ditt objekt.
2. `mus_x` och` mus_y`: Dessa inbyggda variabler har de aktuella X- och Y-koordinaterna för musens markör. Dessa används * inom * funktionen `instans_create_layer ()` för att ange platsen.
3. Händelse:musklick (vänster, höger, mitt): Du måste placera din kod i lämplig musklickhändelse för ditt objekt (vanligtvis inom ett objekts händelse).
sätter samman allt:
Det vanligaste sättet att skapa en instans av ett objekt (`obj_people` i detta exempel) vid muspositionen när vänster musknapp klickas är:
`` `gml
// Inuti "vänsterpressad" händelse av ett objekt (t.ex. ett objekt som styr spelet):
instans_create_layer (mus_x, mus_y, "instanser", obj_people);
`` `
* `mus_x` och` mus_y`: Dessa ger X- och Y -koordinaterna för var musen klickades.
* `" instanser "`: Detta är skiktet där den nya instansen kommer att skapas. Byt ut detta med namnet på ditt lager.
* `obj_people`: Detta är det objekt du vill skapa. Byt ut detta med namnet på ditt objekt.
Viktiga överväganden:
* Lagernamn: Se till att skiktnamnet ("instanser" i exemplet) faktiskt finns i ditt rum.
* Objektnamn: Kontrollera namnet på objektet du försöker skapa. Fallkänslighet är viktig i GMS2.
* evenemangsplacering: Koden * måste * placeras i lämplig mushändelse (vänster pressad, höger pressad, mitten pressad) av ett objekt i ditt rum. Det fungerar inte om det är i Create -evenemanget, till exempel om du inte vill skapa objektet när rummet startar, oavsett musklick.
Det finns inga speciella "uppdragsoperatörskoder" utöver standardanvändningen av funktioner som `instans_create_layer ()` för att uppnå denna effekt. Operatören `=` är inte direkt involverad i * att skapa * en instans, men används för att tilldela * värden * till variabler * inom * koden att skapa instansen (som att ställa in egenskaper för det nyligen skapade objektet).