//vzdycky musi byt v parametru zastupce tridy s kterou jdeme komunikovat public void Kolize_odrazova_plocha(odrazova_plocha objekt, Game1 game) { if (VratRectangle().Intersects(objekt.VratRectangle())) { rychlost_strely *= -1; } }
//kolizní systém public void Kolize_prekazka1(prekazka objekt, Game1 game) { if (VratRectangle().Intersects(objekt.VratRectangle())) { this.smazani_strely = true; } }
//vzdycky musi byt v parametru zastupce tridy s kterou jdeme komunikovat public void Kolize_hrac2(Hrac2 objekt, Game1 game) { if (VratRectangle().Intersects(objekt.VratRectangle())) { this.smazani_strely = true; objekt.ZiskejPozici(new Vector2(900, 20)); } }
//textura a pozice derivovany z nadrazene classy public Hrac1(Texture2D textura, Vector2 pozice, Game1 game) : base(textura, pozice) { this.textura = textura; this.pozice = pozice; this.game = game; skoceno = true; vystreleno = true; zivot = true; }
public void Kolize_odraz_Right(odrazova_plocha objekt, Game1 game) { if (VratRectangle().pravy(objekt.VratRectangle())) { if (Keyboard.GetState().IsKeyDown(Keys.Left)) { rychlost.X = 0f; } } }
public void Kolize_odraz_Bottom(odrazova_plocha objekt, Game1 game) { if (VratRectangle().spodek(objekt.VratRectangle())) { if (Keyboard.GetState().IsKeyDown(Keys.Up)) { rychlost.Y = 0f; } } }
//textura a pozice derivovany z nadrazene classy public Hrac2(Texture2D textura, Vector2 pozice, Game1 game) : base(textura, pozice) { this.textura = textura; this.pozice = pozice; this.game = game; skoceno = true; vystreleno = true; zivot = true; prilnuta_kolize_bottom_Y = true; efekt = SpriteEffects.None; meritko = 1.0f; bod_rotace = new Vector2(textura.Width / 2.0f, textura.Height / 2.0f); }
//zde musi byt VSECHNY komponenty, ktere musi znat game1 a nejsou v jine tride, game1 je zde proto, aby slo hru poustet z vice game komponent public herni_jadro(Game1 game, List<strela> list_strel, List<strela> list_strel2, List<prekazka> list_prekazek, List<odrazova_plocha> list_odrazovych_ploch, List<Hrac1> list_hrac1, List<Hrac2> list_hrac2, Texture2D vystrel, Texture2D vystrel2) { this.game = game; this.vystrel = vystrel; this.vystrel2 = vystrel2; this.list_strel = list_strel; this.list_strel2 = list_strel2; this.list_prekazek = list_prekazek; this.list_odrazovych_ploch = list_odrazovych_ploch; this.list_hrac1 = list_hrac1; this.list_hrac2 = list_hrac2; stisknuto_hrac1 = false; stisknuto_hrac2 = false; }
static void Main() { using (var game = new Game1()) game.Run(); }
public void Kolize_prekazka_Bottom(prekazka objekt, Game1 game) { if (VratRectangle().spodek(objekt.VratRectangle())) { if (Keyboard.GetState().IsKeyDown(Keys.Up)) { rychlost.Y = 0f; } } }
//kolize prekazka odrazova public void Kolize_odraz_Top(odrazova_plocha objekt, Game1 game) { if (VratRectangle().vrchol(objekt.VratRectangle())) { if (Keyboard.GetState().IsKeyDown(Keys.Down)) { rychlost.Y = 0f; } } }
//kolize player vs player public void Kolize_prekazka_Top(Hrac2 objekt, Game1 game) { if (VratRectangle().vrchol(objekt.VratRectangle())) { if (Keyboard.GetState().IsKeyDown(Keys.Down)) { rychlost.Y = 0f; } } }
public void Kolize_prekazka_Right(Hrac2 objekt, Game1 game) { if (VratRectangle().pravy(objekt.VratRectangle())) { if (Keyboard.GetState().IsKeyDown(Keys.Left)) { rychlost.X = 0f; } } }
public void Kolize_prekazka_Left(prekazka objekt, Game1 game) { if (VratRectangle().levy(objekt.VratRectangle())) { if (Keyboard.GetState().IsKeyDown(Keys.Right)) { rychlost.X = 0f; } } }