fi en fi en en en de en en en en en en en en en en en en en zh sv en fr tt de en de en fr fi fr fa fr sv fr en ceb fr fi en fi ja fi fr en de fi fr fi es fi nb fi fr ceb de sv en fi en fi sv en de uk de fi fr fi en fi fr it en fr ru de ru fr ceb fr fr fi fr fi fr fr fi fr en fr kn en fi fr ceb fr fi it fr fi en ru fr en de fr kn fr fr fi fr ceb fr ceb fr sv de fi fr fi fr fi fr fi nl fi fr fi de fi fr fi fr zh fr en fr en pt es fr ko fr fr fi de fi da en fr fi zh es fr nl fr nl fr ceb en fi fr ru fr ca fr es da fr fi fr fr fi fr kn fr fi fr ceb fr fi fr fi en fi da fi zh fi fr fi de kn fr fi fr ceb fr en fr kn fr fi fr ceb da fi oc en oc hy oc kn oc fi en ceb en fi zh fi zh fi fr kn de fi fr ceb fr fi oc fi fr en fr en fr ja fr kn fr fr fr fi fr ceb fr fi fr fi fr ceb fr fi fr sv fr fi hbs_lat fi oc oc et fr fi zh fi fr fi fr kn de oc oc fi oc ceb fr ru oc ceb oc ceb ca fr fi ca ru de fi fr en fr en fr ceb fr fi da ru fr oc hu fr ceb fr nl fr vi fr fa fr de fi fr fi oc nl fr fi oc fi oc fi ca fi fr en fr fr fi oc fi fr de et fr fi ca fi fr fi fr ca en fr ceb fr de fr fr hbs_lat oc ceb fr fi ca kn fr ca fr fr en oc kn oc kn fr fr oc fi oc ceb ca fi fr fi fr fi fr hu oc en fr fi fr en ca fi nb en zh fi zh en zh fi zh en zh zh zh kn zh zh fi fr ceb zh fi ca fi oc oc kn fr oc fi fr ceb zh en fr ceb fr ta de kn fr en oc fr hbs_lat fr ceb fr be fr nb oc it fr la fr kn oc kn ca hu oc ceb oc it fr kn fr oc fi oc ceb fr hu oc en oc tr oc en oc fi fr fi oc nb fr nb oc sv fr fr la fi oc fi oc fi oc en fr hbs_lat fr fi ca fi fr fr fi fr fr af fr kn fr oc fi oc ceb fr fi fr oc ru fr oc fi oc it oc es fr fi oc it fr da fr fr fi fr ceb fr de oc fi fr fa oc oc kn fr fr fi oc ceb oc fi oc ru fr oc fi fr it oc es fr fi de nl fr th fr oc fi oc ceb oc de fr fi de fa fr fr kn fr fi oc ceb fr fi fr fi de fi oc fi fr fi oc fi oc fr et fr fi fr fi oc fi oc kn oc fr fi oc ceb de ceb oc de oc kn oc ca fi oc ceb oc sl oc kn oc oc fi fr ceb oc fi ca oc fi oc pt oc fr et en fi fr ceb oc en fr en fr oc fi oc en fr fi fr ceb oc fi zh kn fr kn fr kn de oc et oc kn fr fi de de fr sco oc fi ca ceb fr fi fr fi da fa oc ru fr kn fr kn ca fr fr ceb de sv fr lt de fr et fr fi oc ceb ca de oc kn fr kn de en en en en en en en en
Revision 6795, 12.0 KB checked in by saveviku, 7 years ago (diff)
public class Hundreddays : PhysicsGame
IntMeter kansiolaskuri = new IntMeter(0,0,0);
Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
void LuoLattia(Vector paikka, double leveys, double korkeus)
GameObject lattia = new GameObject(leveys, korkeus);
ColorTileMap ruudut = ColorTileMap.FromLevelAsset("kenttä");
GameObject pimeys = new GameObject(Level.Width,Level.Height);
pimeys.Color = new Color(0, 0, 0, 100);
// tehdään ekat zombit
// luodaan tietyin väliajoin zombit
Timer zombiajastin = new Timer();
Label pistenäyttö = new Label();
pistenäyttö.X = Level.Left + 100;
pistenäyttö.Y = Level.Top - 100;
ColorTileMap zombiruudut = ColorTileMap.FromLevelAsset("kenttä");
ColorTileMap kansioruudut = ColorTileMap.FromLevelAsset("kenttä");
void LuoTaso(Vector paikka, double leveys, double korkeus)
PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus);
void Luokansio(Vector paikka, double leveys, double korkeus)
PhysicsObject kansio = PhysicsObject.CreateStaticObject(leveys, korkeus);
Timer nakyvyysAjastin = new Timer();
nakyvyysAjastin.Timeout += delegate { TarkistaNakyvyys(kansio); };
void Luozombi(Vector paikka, double leveys, double korkeus)
for (int i = 0; i < 4; i++)
Zombi zombi = new Zombi(40, 20);
AddCollisionHandler(zombi, "ammus", delegate(PhysicsObject z, PhysicsObject ammus)
Zombi zo = z as Zombi;
FollowerBrain seuraajanAivot = new FollowerBrain("ukkeli");
RandomMoverBrain satunnaisAivot = new RandomMoverBrain();
seuraajanAivot.Speed = 40;                 // Millä nopeudella kohdetta seurataan
seuraajanAivot.DistanceFar = 200;           // Etäisyys jolla aletaan seurata kohdetta
seuraajanAivot.FarBrain = satunnaisAivot;   // Käytetään satunnaisaivoja kun ollaan kaukana
Timer nakyvyysAjastin = new Timer();
nakyvyysAjastin.Timeout += delegate { TarkistaNakyvyys(zombi); };
if (zombilaskuri == 0)
ControllerTwo.ListenAnalog(AnalogControl.LeftStick, 0.1, LiikutaPelaajaa, "Liikuta pelaajaa tattia pyörittämällä.", ukkeli2);
ControllerTwo.Listen(Button.A, ButtonState.Down, AmmuAseella, "ammu", ase2);
ControllerOne.ListenAnalog(AnalogControl.LeftStick, 0.1, LiikutaPelaajaa, "Liikuta pelaajaa tattia pyörittämällä.", ukkeli1);
ControllerOne.Listen(Button.A, ButtonState.Down, AmmuAseella, "ammu", ase);
//  LiikutaPelaajaa, null, new Vector(-1000, 0));
//  LiikutaPelaajaa, null, new Vector(1000, 0));
//  LiikutaPelaajaa, null, new Vector(0, 1000));
//  LiikutaPelaajaa, null, new Vector(0, -1000));
//Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu", pelaajan1Ase);
void LiikutaPelaajaa(AnalogState tatinTila, PhysicsObject pelaaja)
PhysicsObject ammus = ase.Shoot();
if (ammus != null)
void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde)
PhysicsObject LuoPelaaja(Vector paikka, double leveys, double korkeus)
PhysicsObject ukkeli = new PhysicsObject(40, 20);
// AddCollisionHandler(ukkeli, "Kerättäväase", PelaajasuuAseeseen);
GameObject valo = new GameObject(250, 250);
void LuoPelaaja1(Vector paikka, double leveys, double korkeus)
ukkeli1 = LuoPelaaja(paikka, leveys, korkeus);
ase = new AssaultRifle(30, 10);
// //Ammusten määrä aluksi:
// //Mitä tapahtuu kun ammus osuu johonkin?
AddCollisionHandler(ukkeli1, "laatikko", delegate(PhysicsObject a, PhysicsObject b)
void LuoPelaaja2(Vector paikka, double leveys, double korkeus)
ukkeli2 = LuoPelaaja(paikka, leveys, korkeus);
ase2 = new AssaultRifle(30, 10);
// //Ammusten määrä aluksi:
// //Mitä tapahtuu kun ammus osuu johonkin?
AddCollisionHandler(ukkeli2, "laatikko", delegate(PhysicsObject a, PhysicsObject b)
void Luolaatikko(Vector paikka, double leveys, double korkeus)
PhysicsObject laatikko = new PhysicsObject(leveys,korkeus);
Timer nakyvyysAjastin = new Timer();
nakyvyysAjastin.Timeout += delegate { TarkistaNakyvyys(laatikko); };
void Pelaajaosuukansioon(PhysicsObject ukkeli,PhysicsObject kansio)
void PelaajaosuuVihuun(PhysicsObject ukkeli,PhysicsObject zombi )
PhysicsObject[] ukkelit = { ukkeli1, ukkeli2 };
int valonPituus = 200;
int valonKulma = 45;
bool piilossa = true;
foreach (var ukkeli in ukkelit)
bool lamppu = Math.Abs((olio.Position - ukkeli.Position).Angle.Degrees - ukkeli.Angle.Degrees) < valonKulma && Vector.Distance(olio.Position, ukkeli.Position) < valonPituus;
bool lahella = Vector.Distance(olio.Position, ukkeli.Position) < 60;
if (lamppu || lahella)
//void PelaajaosuuKerättäväänaseeseen(PhysicsObject ukkeli, PhysicsObject Kerättäväase)
void LuoKerättäväase(Vector paikka, double leveys, double korkeus)
PhysicsObject ase = new PhysicsObject(leveys, korkeus);
class Zombi : PhysicsObject
private IntMeter elamaLaskuri = new IntMeter(5, 0, 5);
public IntMeter ElamaLaskuri { get { return elamaLaskuri; } }
public Zombi(double leveys, double korkeus)
elamaLaskuri.LowerLimit += delegate { this.Destroy(); };
Note: See TracBrowser for help on using the repository browser.
Download in other formats:
Powered by Trac 0.12.5
Visit the Trac open source project at