php/mysql -> Zufälliger Datensatz

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • php/mysql -> Zufälliger Datensatz

    Hallo zusammen,

    bin auf ein Problem gestossen, bei dem ich leider zur Zeit die Lösung nicht sehe.

    Und zwar stehen für unser Spiel xx Monster in der Datenbank :
    CREATE TABLE dnw_monster (
    id int(11) NOT NULL auto_increment,
    nummer int(5) NOT NULL DEFAULT '0',
    name varchar(30) default null,
    dmg_min int(3) NOT NULL DEFAULT '1',
    dmg_max int(3) NOT NULL DEFAULT '2',
    strength int(3) NOT NULL DEFAULT '1',
    geschick int(3) NOT NULL DEFAULT '1',
    intelligenz int(3) NOT NULL DEFAULT '1',
    konzentration int(3) NOT NULL DEFAULT '1',
    konstitution int(3) NOT NULL DEFAULT '5',
    level int(3) NOT NULL DEFAULT '1',
    golddrop int(11) NOT NULL DEFAULT '5',
    itemdrop int(11) NOT NULL DEFAULT '0',
    PRIMARY KEY (id)
    )
    Soweit klar. Nun wird immer per Zufall ermittelt ob der Spieler auf ein Monster trifft, soweit auch klar.

    Doch wie wähle ich nun per Zufall ein passendes Monster aus der Datenbank aus ?

    Und zwar muss die bedingung "level" erfüllt sein, also es darf nur ein Monster ausgewählt werden mit dem level x.

    Ich weiss also :
    - das Level des Spielers
    - und das ein Monster mit gleichem Level pe Zufall ausgewählt werden soll.

    Nun weiss ich ja aber vorher nicht wieviele Monster in der DB stehen bzw. wieviele für das passende Level da wir Onlineeditoren haben, über welceh neue Monster erstellt werden und bestehende verändert werden können.

    Ich hoffe ich konnte das Problem verständlich darstellen und würde mich noch mehr über Hilfe zur Lösung freuen.

    Darky
    - Carpe Noctem -

  • #2
    select ... from monster order by rand() limit 0,1
    TBT

    Die zwei wichtigsten Regeln für eine berufliche Karriere:
    1. Verrate niemals alles was du weißt!


    PHP 2 AllPatrizier II Browsergame

    Kommentar


    • #3
      PHP-Code:
      SELECT RAND(idfrom dnw_monster WHERE level='x'
      Nur so als Vorschlag.
      x steht für den Spielerlevel.

      Kommentar


      • #4
        Da sag ich mal dankeschön denn wie so oft,
        hab ich den Wald mal wieder vor lauter Bäumen nicht gesehn,
        die Lösung ist natürlich völlig richtig

        Darky
        - Carpe Noctem -

        Kommentar


        • #5
          Wessen Lösung? Loco's?
          it's not a bug,
          it's a feature!

          Kommentar

          Lädt...
          X