public Boolean ChytMys(Mapa.Smer smer) //pro pohyb { int sPosX = PosX, sPosY = PosY; switch (smer) { case Mapa.Smer.nahoru: PosY -= Posun; break; case Mapa.Smer.dolu: PosY += Posun; break; case Mapa.Smer.doprava: PosX += Posun; break; case Mapa.Smer.doleva: PosX -= Posun; break; } //ověření, zda není v cestě překážka char objekt = Mapa.VratObjektNaMape(PosX, PosY); foreach (char o in Mapa.zdi) { if (o == objekt) { PosX = sPosX; //navrátí původní hodnoty PosY = sPosY; return(false); //nemůže chodit přes zdi } } Mapa.UmistiObjekt(PosX, PosY, ZnakKocka); if (!Hra.VybiraPolohu) { //if(sPosX == PosX && sPosY > PosY) // Mapa.UmistiObjekt(sPosX, sPosY, '┘'); if (sPosY == PosY) { Mapa.UmistiObjekt(sPosX, sPosY, '─'); } else if (sPosX == PosX) { Mapa.UmistiObjekt(sPosX, sPosY, '│'); } PocetPohybu++; } else { Mapa.UmistiObjekt(sPosX, sPosY, ' '); } return(true); }
static public void NastavHru() { Mapa.VytvorMapu(); VybiraPolohu = true; Jerry = new Mys(ZnakMys, 1); Tom = new Kocka(ZnakKocka, 1); do { Update("Umístěte znak O, tam kde chcete, aby kočka začínala. Akci potvrďte enterem."); Tom.NastavStartPos(ZiskejSmer()); } while (VybiraKocka); VybiraPolohu = true; //vybrání polohy pro myš do { Update("Umístěte znak x, tam kde chcete, aby myš začínala. Akci potvrďte enterem."); Jerry.NastavStartPos(ZiskejSmer()); } while (VybiraPolohu); if (Mapa.VratObjektNaMape(KamenX, KamenY) == ' ') { Mapa.UmistiObjekt(KamenX, KamenY, 'K'); } if (Mapa.VratObjektNaMape(DiraX, DiraY) == ' ') { Mapa.UmistiObjekt(DiraX, DiraY, 'D'); } if (Mapa.VratObjektNaMape(BazinaX, BazinaY) == ' ') { Mapa.UmistiObjekt(BazinaX, BazinaY, 'B'); } }