Napisałem w JavaScript.NET grę "Saper" która prezentuje się tak:
import System;
print("Ladowanie...");
var pole=[[1,1,1,0],[1,17,1,0],[2,2,2,1],[17,1,1,17]]; //17 is a bomb
var odkryto=[[false,false,false,false],[false,false,false,false],[false,false,false,false],[false,false,false,false]];
var koniec_gry=false;
function cyfra_na_liczbe(cyfra){
if(cyfra=="0") return 0;
if(cyfra=="1") return 1;
if(cyfra=="2") return 2;
if(cyfra=="3") return 3;
return 3;
function wspolrzedne(WK){
if(WK[0]=="A") return [0,cyfra_na_liczbe(WK[1])];
if(WK[0]=="B") return [1,cyfra_na_liczbe(WK[1])];
if(WK[0]=="C") return [2,cyfra_na_liczbe(WK[1])];
if(WK[0]=="D") return [3,cyfra_na_liczbe(WK[1])];
return [3,3];
while(!koniec_gry){
print("\n\n--- Aktualny stan pola ---");
for(var i=0;i<4;i++){
for(var j=0;j<4;j++){
if(!(odkryto[i][j])){
System.Console.Write(" # ");
} else if(pole[i][j]==17){
koniec_gry=true;
} else System.Console.Write(pole[i][j]);
}
}
System.Console.Write("\nID pola (np. A1): ");
var l_id_pola=System.Console.ReadLine();
var YX=wspolrzedne(l_id_pola);
var poleY=YX[0];
var poleX=YX[1];
odkryto[pole_Y][pole_X]=true;
if(pole[pole_Y][pole_X]==17) koniec_gry=true;
}
Brakuje tutaj komunikatu GameOver, ani gratulacji po odkryciu całego pola, ale program nie kompiluje się i pokazuje dziwaczny błąd JS1107: Oczekiwano więcej znaków źródłowych
. Nie rozumiem co to znaczy.