AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Schiffe zufällig setzen!
Thema durchsuchen
Ansicht
Themen-Optionen

Schiffe zufällig setzen!

Ein Thema von TNA329 · begonnen am 27. Nov 2009 · letzter Beitrag vom 29. Nov 2009
 
TNA329

Registriert seit: 24. Aug 2008
5 Beiträge
 
#1

Schiffe zufällig setzen!

  Alt 27. Nov 2009, 15:22
Hallo
brauche mal wieder hilfe, wie wohl sogut wie jeder, der ein neues Thema schreibt

Also mein Problem ist folgendes:

Ich programmiere momentan ein Schiffeversenken Spiel...alles soweit so gut bis jetzt keine größeren Probleme gehabt, bis es zur zuälligen Schiffsverteilung kam (vom NPC-Gegner)!

Hatte mal ausprobiert, dass er eben zufällige Koordinaten auswählt und dann überprüft, ob man das schiff setzten kann.
Das überprüfen lief so ab: erstma geguckt, ob Horizontal oder Vertikal -> geprüft, dass Schiff nicht über´n Rand hinaus ragt -> und zuletzt, dass es natürlich nicht auf einem schon besetzten Feld liegt bzw in einem Feld neben eines Schiffes (Ein Feld muss jeweils neben eines anderen Schiffes frei bleiben.)
Selbst das überprüfen ist kein Problem, das ich genau das selbe jeweils prüfe, wenn ich selbst die Schiffe verteile, ABER
wenn der PC das selbst machen soll hängt der sich auf, weil er ja teils ewig suchen muss, bis alle faktoren erfüllt sind, besonders wenn schon Schiffe gesetzt wurden.
Habe die Koordinaten des Feldes in einem Array gespeichert (Array[1..10,1..10] of integer und in einer dynamischen Liste.

Könnt ihr mir also evtl einen Code liefern oder zumindest "mündliche" Lösungen anbieten, wie das problem des aufhängens gelöst werden könnte??
Habe mir schon stunden darüber gedanken gemacht, aber komme zu keinem erfolgreichen ergebnis!

Hoffe ihr versteht das Problem

LG Jochen

---Edit:

Das Feld ist 10x10 groß und es sind folgende Schiffe vorhanden: 1x 5er, 1x 4er, 2x 3er und 1x 2er
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz