public override void DrawSelf(OneLoneCoder_NachoGame graphics, float ox, float oy) { if (bCollected) { return; } var firstMagicalPlayerParamNew = new Point((int)((px - ox) * 16.0f), (int)((py - oy) * 16.0f)); var secondMagicalPlayerParamNew = new Point((int)(0), (int)(0)); graphics.DrawPartialSprite(firstMagicalPlayerParamNew, item.pSprite, secondMagicalPlayerParamNew, 16, 16); }
public override void DrawSelf(OneLoneCoder_NachoGame graphics, float ox, float oy) { // Does nothing // för att kunna se int f = (int)(((px + 0.5f) - ox) * 16.0f); int s = (int)(((py + 0.5f) - oy) * 16.0f); var point = new Point(f, s); // graphics.DrawCircle(((px + 0.5f) - ox) * 16.0f, ((py + 0.5f) - oy) * 16.0f, 0.5f * 16.0f); // For debugging var radius = (int)(16.0f * 0.5f); //var radius = 20; var color = Pixel.Random(); graphics.DrawCircle(point, radius, color); }
public override void DrawSelf(OneLoneCoder_NachoGame gfx, float ox, float oy) // gfx = graphics // olcConscoleGameEngineOOP { // Måste draw rätt sprite som passar state som creature är i, in this point in time // Mosvarar vart på spriten som ska ritas. int SheetOffsetX = 0; //Uppe till vänster är sheet offset 0. (noll index) int SheetOffsetY = 0; // Om y är 1 så är det en rad ner (noll index) switch (sprGraphicsState) { case GraphicsState.Standing: SheetOffsetX = (int)FacingDirection * 16; break; case GraphicsState.Walking: SheetOffsetX = (int)FacingDirection * 16; // så typ den övre raden är åt vilket håll, sen switcha mellan övre raden och undre raden i hans sprite. SheetOffsetY = (int)FacingDirection * 16; break; case GraphicsState.Celebrating: SheetOffsetX = 4 * 16; // för det finns bara 1 sprite för det.. break; case GraphicsState.Dead: SheetOffsetX = 4 * 16; // fyra till höger, SheetOffsetY = 1 * 16; // en ner break; } //Sen är det dags att rita ut spriten // dynamiska objektet finns i world space, men måste rita den i scrren space. 1 - 1 translation eftersom alla enheter är en / en enheter. //Vi måste bara ta reda på vart kameran titar i world space. var firstMagicalPlayerParam = new Point((int)((px - ox) * 16.0f), (int)((py - oy) * 16.0f)); // Vart tilen ska ritas. // SheetOffsetX och SheetOffsetY ger top left in en sprite var secondMagicalPlayerParam = new Point(SheetOffsetX, SheetOffsetY); // Vilken tile i spritesheeten som ska ritas. // 16 är för närvarande en full enhet gfx.DrawPartialSprite(firstMagicalPlayerParam, Sprite, secondMagicalPlayerParam, 16, 16); } //gfx. // Vet i fasiken vad det är han menar. ska den ha en instance av OneLoneCoder_NachoGame ?
/// <summary> /// Ansvarar själv för hur den ser ut på skärmen. Tar en instans av olcGameEnigne /// ox oy offset som typ betyder kamera /// </summary> public virtual void DrawSelf(OneLoneCoder_NachoGame graphics, float ox, float oy) { } //gfx. // Vet i fasiken vad det är han menar. ska den ha en instance av OneLoneCoder_NachoGame ?
public cQuest_MainQuest(OneLoneCoder_NachoGame engine) { g_engine = engine; }