Posts by Sphenox

    unit Unit1;

    interface

    uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, Menus, Grids, ComCtrls, ExtCtrls;

    type
    TForm1 = class(TForm)
    DrawGrid1: TDrawGrid;
    MainMenu1: TMainMenu;
    lolwtf1: TMenuItem;
    ZOMFG1: TMenuItem;
    StatusBar1: TStatusBar;
    ColorDialog1: TColorDialog;
    Einstellungen1: TMenuItem;
    Farbe1: TMenuItem;
    Alleslschen1: TMenuItem;
    ZweiteFarbe1: TMenuItem;
    ColorDialog2: TColorDialog;
    Timer1: TTimer;
    Befehle1: TMenuItem;
    Losgehts1: TMenuItem;
    Stoppen1: TMenuItem;
    procedure ZOMFG1Click(Sender: TObject);
    procedure DrawGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
    Y: Integer);
    procedure Farbe1Click(Sender: TObject);
    procedure DrawGrid1MouseDown(Sender: TObject; Button: TMouseButton;
    Shift: TShiftState; X, Y: Integer);
    procedure Alleslschen1Click(Sender: TObject);
    procedure DrawGrid1MouseUp(Sender: TObject; Button: TMouseButton;
    Shift: TShiftState; X, Y: Integer);
    procedure ZweiteFarbe1Click(Sender: TObject);
    procedure Losgehts1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Stoppen1Click(Sender: TObject);
    private
    { Private-Deklarationen }
    public
    { Public-Deklarationen }
    end;

    type
    tlife = array[-1..20,-1..20] of boolean;

    var
    Form1: TForm1;
    BackColor: tColor = $00E1FDFF;
    DrawColor: tColor = $00790048;
    mausgedruecktl: boolean;
    mausgedruecktr: boolean;
    life: tlife;
    nextlife: tlife;
    implementation

    {$R *.dfm}

    procedure TForm1.ZOMFG1Click(Sender: TObject);
    begin
    halt;
    end;

    procedure TForm1.DrawGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
    Y: Integer);
    var
    c,r: integer;
    begin
    DrawGrid1.MouseToCell(X,Y,c,r);
    StatusBar1.Panels[2].Text := IntToStr(c+1);
    StatusBar1.Panels[4].Text := IntToStr(r+1);
    //Strich malen
    if mausGedruecktl = true then
    begin
    DrawGrid1.Canvas.Brush.Color := DrawColor;
    DrawGrid1.Canvas.FillRect(DrawGrid1.Cellrect(c,r));
    life[c,r]:=true;
    end;

    if mausgedruecktr = true then
    begin
    DrawGrid1.Canvas.Brush.Color := BackColor;
    DrawGrid1.Canvas.FillRect(DrawGrid1.Cellrect(c,r));
    life[c,r]:=false;
    end;
    end;

    //Farbe ändern
    procedure TForm1.Farbe1Click(Sender: TObject);
    begin
    ColorDialog1.Color := Drawcolor;
    ColorDialog1.Execute;
    Drawcolor := ColorDialog1.Color;
    end;

    //Malen!
    procedure TForm1.DrawGrid1MouseDown(Sender: TObject; Button: TMouseButton;
    Shift: TShiftState; X, Y: Integer);
    var
    c,r : integer;
    begin
    case Button of
    mbleft: mausgedruecktl := true;
    mbRight: mausgedruecktr := true;
    end;
    with DrawGrid1 do
    begin
    MouseToCell(X,Y,c,r);
    if Button = mbLeft then
    begin
    Canvas.Brush.Color := DrawColor;
    life[c,r]:=true;
    end
    else
    begin
    Canvas.Brush.Color := BackColor;
    life[c,r]:=false;
    end;
    Canvas.FillRect(Cellrect(c,r));
    end;
    end;

    //alles leermachen
    procedure TForm1.Alleslschen1Click(Sender: TObject);
    var
    i, j : integer;
    begin
    for i:=0 to 19 do
    for j:=0 to 19 do
    begin
    DrawGrid1.Canvas.Brush.Color := BackColor;
    DrawGrid1.Canvas.FillRect(DrawGrid1.Cellrect(i,j));
    life[i,j]:=false;
    end;
    end;

    procedure TForm1.DrawGrid1MouseUp(Sender: TObject; Button: TMouseButton;
    Shift: TShiftState; X, Y: Integer);
    begin
    mausgedruecktl := false;
    mausgedruecktr := false;
    end;

    procedure TForm1.ZweiteFarbe1Click(Sender: TObject);
    begin
    ColorDialog2.Color := Backcolor;
    ColorDialog2.Execute;
    backcolor := ColorDialog2.Color;
    end;

    procedure TForm1.Losgehts1Click(Sender: TObject);
    begin
    Timer1.enabled:=true;
    end;

    procedure TForm1.Timer1Timer(Sender: TObject);
    var
    c,r,i,j,anzahl: integer;
    begin
    for c:=0 to 19 do
    for r:=0 to 19 do
    begin
    anzahl:=0;
    //Nachbarn zählen
    for i:=(c-1) to (c+1) do
    for j:=(r-1) to (r+1) do
    if life[i,j] = true then inc(anzahl);
    if life[c,r] = true then dec(anzahl);

    //Neue Generation berechnen
    if anzahl = 3 then nextlife[c,r]:=true
    else if anzahl=2 then nextlife[c,r]:=life[c,r]
    else nextlife[c,r]:=false;
    end;
    //ausgabe
    for c:=0 to 19 do
    for r:=0 to 19 do
    begin
    if nextlife[c,r]=true then
    DrawGrid1.Canvas.Brush.Color := DrawColor
    else
    DrawGrid1.Canvas.Brush.Color := BackColor;
    DrawGrid1.Canvas.FillRect(DrawGrid1.Cellrect(c,r));
    end;
    life:=nextlife;
    end;

    procedure TForm1.FormCreate(Sender: TObject);
    var i,j:integer;
    begin
    for i:=-1 to 20 do
    for j:=-1 to 20 do
    life[i,j]:=false;
    end;

    procedure TForm1.Stoppen1Click(Sender: TObject);
    begin
    timer1.Enabled:=false;
    end;

    end.


    EDIT: WTF? wo kommen die bananen her? o_O

    moin leute!
    ich bin neu hier und hab eine kleine - zugegeben etwas seltsam klingende - frage:

    gibt es hier jemanden, der DoW:Soulstorm nur Offline oder lan spielt und deswegen keinen nutzen mehr für seine Soulstorm-Serial hat? Es macht mir zwar nicht sehr viel spaß das spiel zu spielen, jedoch macht mir das zusehen sehr viel spaß! deswegen habe ich mir das spiel von einem freund besorgt und suche nun nach einem key, der es mir möglich macht online-matches anzusehen.
    Gibt es hier irgendjemanden, der willens wäre, mir seine serial zu leihen? Ich würde versprechen mir nur onlinespiele anzusehen und nicht selbst zu spielen und würde aufhören den key zu benutzen, sobald man mich per email dazu anweisen würde.

    hoffend auf hilfe, sphenox