Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
mys
Anmeldungsdatum: 19.03.2005 Beiträge: 21 Wohnort: Nähe Giessen
|
Verfasst am: 05. Jan 2006 16:27 Titel: Mastermind... wir brauchen dringend Hilfe! |
|
|
Hallo, wir sind hier 3 Mädels die für die Schule Mastermind programieren sollen.. und nunja.. wir kriegens halt nicht hin *lol* (Hab übrigens doch kein Info leistung genommen)
Wir würden am liebsten ein ganz einfaches mastermind haben, wo jede Farbe (oder Buchstabe oder Zahl) nur einmal vorkommt, haben dann auch schonma gesucht ob wir was finden was uns helfen könnte aber haben immer nur ganz komplizierte Programme gefunden die keiner von uns versteht.. und das müssten wir halt schon weil wir müssen natürlich alles noch kommentieren.
Wir bräuchten also so ne Art Anleitung wie wir Mastermind programmieren können, so einfach wie möglich wenns geht...
kann uns da jemand helfen?????????
BITTEEEEEE!!! _________________ please me |
|
Nach oben |
|
|
|
Thomas Administrator
Anmeldungsdatum: 13.02.2005 Beiträge: 208
|
Verfasst am: 05. Jan 2006 16:31 Titel: |
|
|
Hi ihr,
wo liegt denn genau das Problem bei der Programmierung?
Programmlogik oder einfach die nötigen Delphi-Befehle?
Gruß,
Thomas |
|
Nach oben |
|
|
mys
Anmeldungsdatum: 19.03.2005 Beiträge: 21 Wohnort: Nähe Giessen
|
Verfasst am: 05. Jan 2006 16:38 Titel: |
|
|
ok.. also wir ham jetzt ma den Code von nem anderen Programm und ja, wir verstehn das meiste davon net also wärs ganz gut, wenn uns jemand einfach mal den Code erklärt
Code: | Const
Farbfeld : Array[1..6] of TColor
= (clRed,clLime,clYellow,clBlue,clGreen,clMaroon);
procedure TForm1.InitGame;
var
i,k:Integer;
begin
for k:=1 to 10 do
for i:=1 to 4 do
begin
with Spielsteine[k,i,1] do
begin
visible:=false;
Brush.Color:=clwhite;
OnDragOver:=Nil;
OnDragDrop:=Nil;
end;
with Spielsteine[k,i,2] do
begin
visible:=false;
Brush.Color:=clwhite;
end;
end;
for i:=1 to 4 do
begin
Loesung[i].FarbNr:=random(6)+1;
Loesung[i].markiert:=false;
end;
Versuche:=0;
gewonnen:=false;
NeueSpielsteine(1,4);
btNeu.Caption:='&Zeigen';
end;
procedure TForm1.CreateSpielsteine(Quelle:Integer);
var
i,k:Integer;
begin
for k:=1 to 10 do
for i:=1 to 4 do
begin
Spielsteine[k,i,Quelle]:=TShape.Create(Self);
with Spielsteine[k,i,Quelle] do
begin
Parent:=PanelArray[Quelle];
top:=(k-1)*32+16;
width:=25;
height:=25;
left:=35*(i-1)+20;
Shape:=stCircle;
visible:=false;
OnDragOver:=Nil;
OnDragDrop:=Nil;
end;
end;
end;
procedure TForm1.NeueSpielsteine(Quelle,Anzahl:Integer);
var
i:Integer;
begin
for i:=1 to Anzahl do
begin
with Spielsteine[Versuche+1,i,Quelle] do
begin
visible:=true;
if Quelle = 1 then
begin
OnDragOver:=BspShapeDragOver;
OnDragDrop:=BspShapeDragDrop;
end
end;
end;
Steinnr:=1;
end;
procedure TForm1.DefineFarbsteine(Anzahl:Integer);
var
i:Integer;
begin
for i:=1 to Anzahl do
begin
Farbsteine[i]:=TShape.Create(Self);
with Farbsteine[i] do
begin
Parent:=PanelArray[3];
top:=(i-1)*32+16;
width:=25;
height:=25;
left:=16;
Shape:=stRectangle;
Brush.Color:=Farbfeld[i];
OnMouseDown:=BspShapeMouseDown;
end;
end;
end;
procedure TForm1.ShowLoesung;
var
i,k:Integer;
begin
for k:=1 to 10 do
for i:=1 to 4 do
with Spielsteine[k,i,1] do
begin
OnDragOver:=Nil;
OnDragDrop:=Nil;
end;
btNeu.Caption:='&Neu';
gewonnen:=true;
with Form2 do
begin
Shape1.Brush.Color:=Farbfeld[Loesung[1].FarbNr];
Shape2.Brush.Color:=Farbfeld[Loesung[2].FarbNr];
Shape3.Brush.Color:=Farbfeld[Loesung[3].FarbNr];
Shape4.Brush.Color:=Farbfeld[Loesung[4].FarbNr];
Showmodal;
end;
end;
function TForm1.Auswerten(var ganz,teils:Integer):Boolean;
var
i,k,farbig:Integer;
begin
Auswerten:=false;
farbig:=0;
for i:=1 to 4 do // prüfen, ob alle Farben ausgesucht wurden
if Spielsteine[Versuche+1,i,1].Brush.Color<>clwhite then
farbig:=farbig+1;
if farbig=4 then
begin
Auswerten:=true;
ganz:=0;
teils:=0;
for i:=1 to 4 do // geratene Farbe an richtiger Stelle
if Spielsteine[Versuche+1,i,1].Brush.Color=Farbfeld[Loesung[i].FarbNr] then
begin
ganz:=ganz+1;
Loesung[i].markiert:=true;
end;
for i:=1 to 4 do
begin
k:=1;
repeat // geratene Farbe an falscher Stelle
if
(Spielsteine[Versuche+1,i,1].Brush.Color=Farbfeld[Loesung[k].FarbNr])
and
(Loesung[k].markiert=false)
and
(Spielsteine[Versuche+1,i,1].Brush.Color<>Farbfeld[Loesung[i].FarbNr])
then
begin
teils:=teils+1;
Loesung[k].markiert:=true;
k:=5;
end
else
k:=k+1;
until k=5;
end;
for i:=1 to 4 do // Markierung für nächsten Rateversuch entfernen
Loesung[i].markiert:=false;
end;
gewonnen:=ganz=4;
btNeu.Caption:='&Zeigen';
end;
procedure TForm1.FormCreate(Sender: TObject);
Begin
Randomize;
gewonnen:=true;
PanelArray[1]:=Spielfeld;
PanelArray[2]:=Ergebnisfeld;
PanelArray[3]:=Farben;
DefineFarbsteine(6);
CreateSpielsteine(1); // Steine im Spielfeld
CreateSpielsteine(2); // Steine im Ergebnisfeld
InitGame;
end;
// Drag- und Drop-Mechanismus
procedure TForm1.BspShapeMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Button=mbLeft then
With Sender as TShape do
BeginDrag(True);
end;
procedure TForm1.BspShapeDragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
if Source is TShape then
Accept:=True;
end;
procedure TForm1.BspShapeDragDrop(Sender, Source: TObject; X, Y: Integer);
begin
(Sender as TShape).Brush.Color:=(Source as TShape).Brush.Color;
end;
// Auswerten einer Eingabezeile
procedure TForm1.btokClick(Sender: TObject);
var
ganzrichtig,teilrichtig,i : Integer;
begin
if Auswerten(ganzrichtig,teilrichtig)then
begin
if (Versuche<9) and not gewonnen then
begin
NeueSpielsteine(2,ganzrichtig+teilrichtig);
i:=1;
while i<=(ganzrichtig+teilrichtig) do
begin
if i<=ganzrichtig then
Spielsteine[Versuche+1,i,2].Brush.Color:=clblack
else
Spielsteine[Versuche+1,i,2].Brush.Color:=clwhite;
i:=i+1;
end;
for i:=1 to 4 do
begin
Spielsteine[Versuche+1,i,1].OnDragDrop:=Nil;
Spielsteine[Versuche+1,i,1].OnDragOver:=Nil;
end;
Versuche:=Versuche+1;
NeueSpielsteine(1,4);
end
else
begin
if gewonnen then
begin
Showloesung;
//Application.Messagebox(' Gewonnen!!! ','Sieger',mb_ok);
//btNeu.Caption:='&Neu';
end
else
Application.Messagebox(
'Das war der letzte Versuch, der leider auch falsch war!',
'Spielende',mb_ok);
end;
end
else
Application.Messagebox('Es sind noch nicht alle Farben ausgesucht!',
'Unvollständige Farbwahl',mb_ok);
end;
procedure TForm1.btEndeClick(Sender: TObject);
begin
Application.terminate;
end;
procedure TForm1.btNeuClick(Sender: TObject);
begin
if gewonnen then
begin
InitGame;
end
else
begin
ShowLoesung;
end;
end;
|
_________________ please me |
|
Nach oben |
|
|
mys
Anmeldungsdatum: 19.03.2005 Beiträge: 21 Wohnort: Nähe Giessen
|
Verfasst am: 15. Jan 2006 19:15 Titel: |
|
|
da hier ja niemand mehr was geschrieben hat ham wir uns dann doch ma ran gesetzt und geguckt was was bedeuten könnte, haben dann das was wir so dachten mal kommentiert:
Code: | unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, ExtCtrls, StdCtrls, Menus, ShellApi;
type
TMainForm = class(TForm)
F11: TSpeedButton;
F12: TSpeedButton;
F13: TSpeedButton;
F14: TSpeedButton;
PaintBox: TPaintBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
MainMenu1: TMainMenu;
Datei1: TMenuItem;
NeuesSpiel1: TMenuItem;
N1: TMenuItem;
Beenden1: TMenuItem;
Info1: TMenuItem;
F21: TSpeedButton;
F22: TSpeedButton;
F23: TSpeedButton;
F24: TSpeedButton;
F31: TSpeedButton;
F32: TSpeedButton;
F33: TSpeedButton;
F34: TSpeedButton;
F41: TSpeedButton;
F51: TSpeedButton;
F61: TSpeedButton;
F71: TSpeedButton;
F81: TSpeedButton;
F42: TSpeedButton;
F52: TSpeedButton;
F62: TSpeedButton;
F72: TSpeedButton;
F82: TSpeedButton;
F43: TSpeedButton;
F44: TSpeedButton;
F53: TSpeedButton;
F54: TSpeedButton;
F63: TSpeedButton;
F64: TSpeedButton;
F73: TSpeedButton;
F74: TSpeedButton;
F83: TSpeedButton;
F84: TSpeedButton;
OK1: TSpeedButton;
OK2: TSpeedButton;
OK3: TSpeedButton;
OK4: TSpeedButton;
OK5: TSpeedButton;
OK6: TSpeedButton;
OK7: TSpeedButton;
OK8: TSpeedButton;
Bevel1: TBevel;
ColorPanel: TPanel;
Shape1: TShape;
Shape2: TShape;
Shape3: TShape;
Shape4: TShape;
Shape5: TShape;
procedure PaintBoxPaint(Sender: TObject);
procedure Beenden1Click(Sender: TObject);
procedure OK1Click(Sender: TObject);
procedure Info1Click(Sender: TObject);
procedure NeuesSpiel1Click(Sender: TObject);
procedure F11MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private-Deklarationen }
public
function Winner: Boolean;
function Ausgef(Sender: TObject): Boolean;
procedure Ausw;
end;
const
colors_: Array[0..5] of TColor = (clWhite, clBlue, clRed, clYellow, clGreen, clAqua); //Hier wird festgelegt welche Farben möglich sind
var
MainForm: TMainForm;
F: Array[1..8, 1..4] of Byte;
WF: Array[1..4] of Byte;
Won: Boolean = False;
AusW_: Array[1..8, 1..4] of Byte;
procedure InitParams;
implementation
{$R *.dfm}
procedure InitParams;
begin
Randomize; //Zufallsgenerator gestartet
MainForm.NeuesSpiel1Click(MainForm); //Prozedur neues Spiel wird automatisch neu gestartet
MainForm.PaintBoxPaint(MainForm); // Prozedur PaintBox wird auch automatisch gestartet
end;
procedure TMainForm.PaintBoxPaint(Sender: TObject);
var I, J: Byte;
begin
with MainForm.PaintBox.Canvas do begin
For I:=1 to 8 do //1 bis 8 sind Zeilen
For J:=1 to 4 do begin // 1 bis 4 sind Spalten(4Kästchen in einer Zeile)
Pen.Color:=Colors_[F[I,J]];
Brush.Color:=Pen.Color;
RectAngle((J-1)*25,(I-1)*25, (J-1)*25+20, (I-1)*25+20); //legt Koordinaten des Rechtecks fest
if Ausw_[I, J]>0 then begin //>0 bedeutet, dass das Rechteck eine Farbe hat, wenn das der Fall ist soll die Auswertung richtig los gehen.
if Ausw_[I, J] = 1 then Pen.Color:=clWhite //=1 bedeutet, dass die Farbe zwar vorkommt, aber nicht an der richtigen Stelle sitzt
else Pen.Color:=clBlack; //ansonsten sitzt die Farbe schon am richtigen Platz und der schwarze Kontroll-Knopf erscheint
Brush.Color:=Pen.Color;
RectAngle(140+((J-1) mod 2)*11, (I-1)*25+((J-1) div 2)*11,
140+((J-1) mod 2)*11+10, (I-1)*25+((J-1) div 2)*11+10); //legt Koordinaten der schwarz, weiß Knöpfe fest.
end;
end;
if Won then
For I:=1 to 4 do begin
Pen.Color:=Colors_[WF[I]];
Brush.Color:=Pen.Color;
RectAngle((I-1)*25, 205, (I-1)*25+20, 220);
end;
end;
end;
procedure TMainForm.Beenden1Click(Sender: TObject);
begin
Close; //Spiel wird beendet
end;
function TMainForm.Winner: Boolean;
var
I: Byte;
begin
Result:=True;
For I:=1 to 4 do
if WF[I]<>F[MainForm.Tag, I] then Result:=False;
end;
function TMainForm.Ausgef(Sender: TObject): Boolean;
var I: Byte;
begin
Result:= True;
For I:=1 to 4 do
if F[(Sender as TSpeedButton).Tag, I]=0 then
Result:=False; //überprüft ob das "Ergebnis" (Farbe) richtig ist
end;
procedure TMainForm.OK1Click(Sender: TObject);
begin
if not Ausgef(Sender) then exit;
if Winner then Won:=True; //wenn gewonnen ist, dann...
case (Sender as TSpeedButton).Tag of
1: begin
F11.Enabled:=False;
F12.Enabled:=False;
F13.Enabled:=False;
F14.Enabled:=False;
OK1.Enabled:=False; //erste Zeile +OK-Button wird deaktiviert
end;
2: begin
F21.Enabled:=False;
F22.Enabled:=False;
F23.Enabled:=False;
F24.Enabled:=False;
OK2.Enabled:=False; //zweite Zeile + OK-Button wird deaktiviert
end;
3: begin
F31.Enabled:=False;
F32.Enabled:=False;
F33.Enabled:=False;
F34.Enabled:=False;
OK3.Enabled:=False; //dritte Zeile +OK-Button wird deaktiviert
end;
4: begin
F41.Enabled:=False;
F42.Enabled:=False;
F43.Enabled:=False;
F44.Enabled:=False;
OK4.Enabled:=False; //vierte Zeile +OK-Button wird deaktiviert
end;
5: begin
F51.Enabled:=False;
F52.Enabled:=False;
F53.Enabled:=False;
F54.Enabled:=False;
OK5.Enabled:=False; //fünfte Zeile +OK-Button wird deaktiviert
end;
6: begin
F61.Enabled:=False;
F62.Enabled:=False;
F63.Enabled:=False;
F64.Enabled:=False;
OK6.Enabled:=False; //sechste Zeile +OK-Button wird deaktiviert
end;
7: begin
F71.Enabled:=False;
F72.Enabled:=False;
F73.Enabled:=False;
F74.Enabled:=False;
OK7.Enabled:=False; //siebte Zeile +OK-Button wird deaktiviert
end;
8: begin
F81.Enabled:=False;
F82.Enabled:=False;
F83.Enabled:=False;
F84.Enabled:=False;
OK8.Enabled:=False; //achte Zeile +OK-Button wird deaktiviert
end;
end;
if not Won then begin //wenn nicht gewonnen ist, dann wird die nächste Zeile verfügbar gemacht, um weiter spielen zu können.
case (Sender as TSpeedButton).Tag of
1: begin
F21.Enabled:=True;
F22.Enabled:=True;
F23.Enabled:=True;
F24.Enabled:=True;
OK2.Enabled:=True;
end;
2: begin
F31.Enabled:=True;
F32.Enabled:=True;
F33.Enabled:=True;
F34.Enabled:=True;
OK3.Enabled:=True;
end;
3: begin
F41.Enabled:=True;
F42.Enabled:=True;
F43.Enabled:=True;
F44.Enabled:=True;
OK4.Enabled:=True;
end;
4: begin
F51.Enabled:=True;
F52.Enabled:=True;
F53.Enabled:=True;
F54.Enabled:=True;
OK5.Enabled:=True;
end;
5: begin
F61.Enabled:=True;
F62.Enabled:=True;
F63.Enabled:=True;
F64.Enabled:=True;
OK6.Enabled:=True;
end;
6: begin
F71.Enabled:=True;
F72.Enabled:=True;
F73.Enabled:=True;
F74.Enabled:=True;
OK7.Enabled:=True;
end;
7: begin
F81.Enabled:=True;
F82.Enabled:=True;
F83.Enabled:=True;
F84.Enabled:=True;
OK8.Enabled:=True;
end;
8: begin
MessageDlg('Verloren!', mtInformation, [mbOK], 0); //Dialogfeld "Verloren" wird angezeigt,wenn der Spiele auch in der achten Zeile nicht die richtige Kombination erraten hat
Won:=True;
end;
end;
Ausw;
MainForm.Tag:=MainForm.Tag+1; //Versuche werden gezählt
end else
MessageDlg('Gewonnen beim '+IntToSTr(MainForm.Tag)+'. Versuch!.', //Werden im Dialogfeld "Gewonnen" angezeigt (Versuche)
mtInformation, [mbOK], 0);
PaintBox.Refresh;
end;
procedure TMainForm.Info1Click(Sender: TObject);
begin
shellexecute(handle,'open','Hilfe.html', //mit Klick auf "Info" wird die externe Hilfe-Datei aufgerufen
nil,nil,sw_show);
end;
procedure TMainForm.NeuesSpiel1Click(Sender: TObject); //Neues Spiel wird gestartet
var I, J: Byte;
begin
Won:=False;
MainForm.Tag:=1; //der erste Versuch
For J:=1 to 8 do //erste Zeile
For I:=1 to 4 do begin //vom ersten zum vierten Kästchen
F[J, I]:=0;
AusW_[J, I]:=0;
end;
For I:=1 to 4 do
WF[I]:=Random(5)+1; //Zufallsgenerator wird aktiviert
F11.Enabled:=True;
F12.Enabled:=True;
F13.Enabled:=True;
F14.Enabled:=True;
OK1.Enabled:=True;
PaintBox.Refresh; //Nur die erste Zeile wird verfügtbar gemacht und die Paintbox wird aktualisiert
end;
procedure TMainForm.Ausw;
var I, J: Byte;
B, W: Byte;
K, K1: Array[1..4] of Boolean;
begin
B:=0; W:=0; //B (schwarze Kontroll-Knöpfe) und W (weiße Kontroll-Knöpfe) werden auf null gesetzt
For I:=1 to 4 do // läuft von 1 bis 4 durch
if F[MainForm.Tag, I] = WF[I] then begin //erstes Kästchen wird
K[I]:=True;
K1[I]:=True;
Inc(B);
end else begin
K[I]:=False;
K1[I]:=False;
end;
For I:=1 to 4 do
if not K[I] then
For J:=1 to 4 do
if not K1[J] and (WF[J]=F[MainForm.Tag, I]) then begin
K[I]:=True; K1[J]:=True; Inc(W);
end;
If B>0 then
for I:=1 to B do
AusW_[MainForm.Tag, I]:=2;
if (W>0) and ((B+W)<=4) then
for I:=B+1 to B+W do
AusW_[MainForm.Tag, I]:=1;
end;
procedure TMainForm.F11MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if (Sender as TControl).Enabled=False then exit;
if Button = mbLeft then begin
if F[(Sender as TSpeedButton).Tag div 10, (Sender as TSpeedButton).Tag mod 10]=5 then
F[(Sender as TSpeedButton).Tag div 10, (Sender as TSpeedButton).Tag mod 10]:=1
else
Inc(F[(Sender as TSpeedButton).Tag div 10, (Sender as TSpeedButton).Tag mod 10]);
PaintBoxPaint(Self);
end else begin
ColorPanel.Left:=23+((Sender as TSpeedButton).Tag mod 10)*25;
ColorPanel.Top:=((Sender as TSpeedButton).Tag div 10)*25;
ColorPanel.Visible:=True;
end;
end;
end. |
Jetzt wäre es echt super nett, wenn sich vielleicht doch noch mal jemand erbarmen könnte und uns helfen könnte. Denn wir wissen nicht ob das was wir dazu geschrieben haben wirklich so stimmt und da wo noch nix dazu steht (bes. die letzten zwei Proceduren) haben wir gar keine Ahnung
Also bitte helft uns doch mal, ihr seid doch sonst auch immer so schlau und könnt alles und so nett und helft immer...
Cu, mys _________________ please me |
|
Nach oben |
|
|
TMSearcher
Anmeldungsdatum: 19.05.2005 Beiträge: 270 Wohnort: Bremen
|
Verfasst am: 18. Jan 2006 19:42 Titel: |
|
|
Hi,
Kennt ihr das Spiel?
Kennt ihr die Spielregeln?
Und könnt ihr in Delphi programmieren?*
Wo liegt dann das Problem, außer dass das nicht auf eurem Mist gewachsen ist.
Manchmal geht Selbermachen schneller als zu versuchen die wirren Gedanken eines anderen zu verstehen.
Ich würde mich hinsetzen und eine Runde Mastermind spielen und exakt alle Vorgänge notieren (ich meine wirklich alle, außer die Gedanken desjenigen der setzen muss )
Dann würde ich festlegen was gebraucht wird (Variablen – z.B. Spielfeld, Konstanten – z.B. Spielfarben usw.)
Dann würde ich einen groben Ablaufplan machen.
Dann würde ich den Ablaufplan detaillieren.
Dann erst würde ich anfangen mit dem Coden und dann ist’s in der Regel auch egal womit. Und dann würden gezielte Fragen auftauchen die ich auch verstehe wenn sie beantwortet werden. Bei Details gibt’s bestimmt auch etwas mehr Resonanz .
Lasst uns die Sache doch mal so angehen, wie man einen PAP** macht ist hier erst mal wurscht, Hauptsache man selber oder das Team versteht ihn. Später gibt’s Regeln dafür damit alle was damit anfangen können.
Vielleicht der einfachere Weg?
So long...
TMS
*ich kann kein Delphi (oder nur wenig), aber ich glaube das ist hier auch unerheblich
** außer ihr wisst gar nicht was das ist -> eine Was-Passiert-Dann-Maschine _________________ Intelligent life is so very rare,
the rarest thing in creation
and the most precious
This is Earth Calling.. |
|
Nach oben |
|
|
mys
Anmeldungsdatum: 19.03.2005 Beiträge: 21 Wohnort: Nähe Giessen
|
Verfasst am: 18. Jan 2006 21:32 Titel: |
|
|
im Prinzip hast du ja recht, selber machen wäre wirklich der bessere Weg. Aber das würde so ewig dauern Dafür fehlt uns einfach die Zeit, haben ja auch noch andere Dinge zu tun und es wird immer mehr :/
Und jetzt ist es zum neuanfangen eh schon zu spät, da wir unser Mastermind heute schon im Kurs präsentiert haben (Gott sei Dank mussten wir den Quellcode nicht erklären *lol*), werdens dann halt so abgeben wie wirs ham und entweder der Lehrer merkt nix oder es is ihm egal oder wir ham en Problem, lassen wirs halt mal drauf ankommen... _________________ please me |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum nicht posten Du kannst Dateien in diesem Forum nicht herunterladen
|
|