Jolas txiki bat egingo dugu ikasketa prozesua bukatutzat emateko. 3 saiotan egingo dugu, beraz adi egon eta ez zaitezte galdu!
Zero Launcherrekin, proiektu berri bat sortuko dugu hasteko: JolasTxikia1C_Abizena Izena / JolasTxikia1ABD_Abizena Izena izenekoa.
Hasteko, Resources=>Import Content Package eginez, TeklatuBidezMugitu, CollisionLogic , ButtonSpawner eta TimedSpawner ZilchScriptak inportatuko dituzue. BolaGorria arketipoa ere inportatuko dugu.
LAU level izango ditu jolasak. Sortuko ditugu: (Library'n, Level etiketan sakatu eta eskuineko botoia sakatuz Add Level egin)
PORTADA, JOLAS_TXIKIA, GAMEOVER eta YOUWIN izenekoak.
Momentuz SpriteText pare bat solik sartuko dugu erdian. Baten JOLAS TXIKIA ipiniko du eta bestean, apur bat txikiago, gure izena eta abizena.(SpriteText osagaian Text ezaugarrian)
Momentuz SpriteText bat solik sartuko dugu erdian non GAME OVER ipiniko duen.
Momentuz SpriteText bat solik sartuko dugu erdian non IRABAZI DUZU! ipiniko duen.
PLATAFORMA
Level honetan egizu plataforma bat (Nola egin plataforma?) (pantaila osoa baino apur bat gehiago)
PERTSONAIA
INTERESGARRIA: Sortu Sprite animatuak pertsonaia eta etsaientzako. Nola egin sprite animatu bat?
Sortu Pertsonaia izeneko Sprite bat. Collider-a eta RigidBody-a izan ditzala.
Pertsonaia mugitu dadila teklatuarekin. (Zer ZilchScript esleituko diozu???)
Honela lortuko dugu kamarak gure pertsonaia jarraitzea: Arrastratu objektuen leihoan kamara pertsonaiaren gainera eta bere azpian (barrurago) geratuko da (Bere semea bihurtuko da hori eginez eta berarekin batera mugituko da)
ETSAIA
Sortu Etsaia izeneko sprite bat eta pertsonaiaren eskuinaldean jarri . (Colliderra ez ahaztu!)
AUKERAN: Etsai gehiago sortu ahal dituzu aurrekoaren berdinak, kopia eginez (izen bera mantenduz) edo desberdinak, kasu honetan izenak aldatuz.
ATEA (Level hau irabazteko Pertsonaiak Atea ukitu beharko du)
Plataforma bukaeran ate bat kokatu, Atea izenekoa(Colliderra ez ahaztu!)
Arin ibiltzeko, ondoko estekak erabili atearen PNG-a deskargatzeko: ate animatuaren SpriteSheet-a edo ate normala)
PERTSONAIAREN TALKAK KUDEATU JOLASA IRABAZTEKO EDO GALTZEKO
PertsonaiarenTalkak ZichScript-a egizu eta Pertsonaiari esleitu. Honen bidez, Pertsonaiak talka egiten duenean objektu zehatz batzuekin levelez aldatuko da: Galduz gero GAMEOVER levelera eta irabaziz gero YOUWIN levelera. CollisionLogic ZilchScripta eredu bezala har dezakezu, egitura oso antzekoa baitu!
GALDU: Pertsonaiak etsaiekin talka eginez gero, galduko duzu eta GAMEOVER levela kargatuko da.
IRABAZI: Pertsonaiak, bukaeran dagoen Atea ukituz gero, beste level bat kargatuko da: YOUWIN levela.
Level berri bat kargatzeko komandoa(GAMEOVER izenekoa kasu honetan):
this.Space.LoadLevel(Level.GAMEOVER);
+ AUKERAN (POSITIBOA LORTZEKO, LAGUNTZA BARIK!)
AUKERAN:Pertsonaiak jaurti ditzala "BolaGorria"-k (edo zuk nahi duzun beste arketipo bat) eskuinerantz espazio tekla sakatzen dugunean etsaiak hiltzeko.(Zer ZilchScript esleituko diozu...???)
ETSAIEN TALKAK KUDEATU HAUEK HIL DAITEZEN PERTSONAIAK JAURTITUTAKO OBJEKTUEKIN
EtsaiarenTalkak ZilchScripta egizu eta Etsaiari esleitu.(Honetarako, PertsonaiarenTalkak eredu bezala har dezakezu)
Etsaia hilko da (desagertu) pertsonaiak jaurtitutako objektuekin ("BolaGorria"?) talka eginez gero.
ADI! etsaiak pertsonaiarekin talka eginez gero, pertsonaia da hilko dena eta GAMEOVER levelera eramngo gaitu, baina kasu hori jada PertsonaiarenTalkak ZilchScriptean kontutan izan dugu, beraz, hemen talka hori ez dugu kontutan izango!
Objektu bat desagertarazteko Destroy() komandoa erabiliko duzu.Kasu honetan Etsaiak exekutatuko duenez ZilchScript hau, bere burua desagerrarazteko komandoa: this.Owner.Destroy();
+ AUKERAN (POSITIBOA LORTZEKO, LAGUNTZA BARIK!)
Eskuinaldean kokatutako etsai batek objekturen bat jaurti dezala ezkerrerantza 5 segunduro pertsonaia hiltzeko.
ADI! Ezin dira BolaGorriak izan,hauek etsaia hilko bait dute. Beste arketipo bat sortu beharko duzue. (Zer ZilchScript esleituko diozu etsai horri 5segunduro zerbait jaurti dezan?)
Ez bazenuen TimedSpawner egokitu property baten bidez jaurtitutako objektuen abiadura bektorea aldatzeko, ez egin!
Egokitu beharko duzu PertsoanaiarenTalkak ZS-a beste objektu honekin talka eginez gero ere GAMEOVER levelera pasatzeko.
AMAITU DUGU???
Orain JolasTxikia esportatuko dugu ikusteko ea EXEKUTAGARRIA ondo doan.
Horretarako, Project=>ExportGame egizu eta izen bat emaiozu (1X_AbizenaIzena_JOLASTXIKIA, non X zure C edo ABD ipiniko duzun) eta aukeratu zein karpetan gorde nahi duzun.
Joan karpeta horretara eta exekutatu bere gainean bi klik eginez. Espero duzun moduan funtzionatzen du? Portadan hasten da?
Ez bada horrela gauzatxo bat konpondu beharko dugu...
Library-n bilatu Game izeneko Arketipoa.
Bere Propertiak ikustera bazoaz, DefaultGameSetup osagaian ikusi ea zer jartzen duen StartingLevel ezaugarrian. Hor esango diogu zein leveletan hasi behar den jolasa. Aukeratu PORTADA.
Orain, proiektua gorde eta berriz ere sortu exekutagarria.
Arazoa konponduta? Arazo berri bat agertu da? Zein?
Jakingo zenuke hori zure kabuz egiten? Pentsatu, zer egin dezakezu tekla bat sakatuz JOLAS_TXIKIA levela kargatu dadin?
JolasaHasi izeneko ZilchScript berri bat sor dezakezu non tekla bat sakatuz (ENTER?) JOLAS_TXIKIA levela kargatuko den.
PORTADA levelean, JOLAS TXIKIA SpriteText-aren azpian, beste SpriteText baten bidez adierazi zein tekla sakatu behar den jolasten hasteko.
Esleitu JolasaHasi ZilchScripta Portada Leveleko objekturen bati, adibidez LevelSettings objektuari!
Eta ZilchScript bera (JolasaHasi) esleitzen badiozu YOUWIN eta GAMEOVER leveleko LevelSettings objektuari? Noski, eginez gero, leihoan ager dadila mezu bat esanez Enter sakatuz berriro jolastu ahalko duela.