Portal > Foren > Java > Desktop-Applikationen und Grafik > Spiel -> Inventar???
Antwort
 
Themen-Optionen
Alt 17.08.2005, 12:54 Nach oben    #1
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard Spiel -> Inventar???

Hi Leute,

Ich hab gerade in kleines Abenteuer-Spiel am laufen, und breuchte eine Idee für ein Inventar für alle Gegenstände die ich finden kann...

Ich weiß eben nicht wie ich anfangen soll, somit sind noch alle Möglichkeiten offen.

Ich würde das Inventar dann als 2D-Grafik dar stellen...

Vielen Dank für eure Hilfe
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.08.2005, 14:02 Nach oben    #2
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.480
Standard

Die Inventargegenstände würde ich ja eher als Bilddatei einbinden ... oder habe ich das jetzt falsch verstanden?
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 17.08.2005, 19:32 Nach oben    #3
Benutzer
 
Registriert seit: 01.07.2005
Beiträge: 37
Standard

Jo genau, orientier dich doch am besten an Spielen, die es schon gibt, z.B. Diablo.
Je nachdem wieviel Gegenstände du insgesamt haben möchtest, würde eventuell eine Datenbank in Frage kommen.
Hot-Thunder ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.08.2005, 12:48 Nach oben    #4
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Ich hatte schon die Idee mit Bildern zu arbeiten... und das mit Diablo ist auch gut...
das Problem ist, das ich nicht weiß wie ich die Gegenstände im Inventar speichern soll.
Und das Inventar (wie bei Diablo) soll 8 x 4 Kästchen groß sein + die Gegenstände die ich an habe, das sind 6.

Ich habe schon an einen Vector gedacht, aber da kann ich nicht alle Eigenschaften speichern.
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.08.2005, 18:37 Nach oben    #5
Benutzer
 
Registriert seit: 01.07.2005
Beiträge: 37
Standard

also wenn du mit einer Art Datenbank im Hintergrund arbeitest, dann erstellste dir einfach eine Tabelle, wo das aktuelle Inventar abgelegt wird.
Von den ganzen Gegenständen die es gebgen soll, liegen dort drinnen dann nur die Sachen, die im Inventar platz haben.
Hot-Thunder ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.08.2005, 21:29 Nach oben    #6
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Idee ist toll... ich hab leider noch nie (glaub ich) mit einer Datenbank geabeiten...
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.08.2005, 22:51 Nach oben    #7
Sesselkleber
 
Benutzerbild von sparrow
 
Registriert seit: 17.01.2005
Beiträge: 575
Standard

Du kannst auch einfach jedem Gegestand eine interne Nummer geben (ID), und das Inventar als Array anlegen. Also neues Array mt 8 * 4 + 4 Entrys.
Dann speicherst du in dem Array einfach die ID des Objekts und schreibst den Inhalt in die Datei.
Schön speichern kann man savegames übrigens im XML-Format.

Gruß
sparrow
sparrow ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 18.08.2005, 23:01 Nach oben    #8
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Ich werd das ausprobieren...
Und wo hab ich dann meine Gegenstände? Kann man die dann in einer Text datei speichern und mit der ID abrufen???
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 19.08.2005, 20:32 Nach oben    #9
Sesselkleber
 
Benutzerbild von sparrow
 
Registriert seit: 17.01.2005
Beiträge: 575
Standard

Leg doch einfach eine Klasse Item an.
In ihr kannst du die verschiedenen Objekte wie Bild, Typ usw. als Variable speichern.
Und dann vielleicht mit einer Methode, in der du beim Konstrukt angibst um was es sich handelt.
So in etwa:

PHP-Code:
Item item = new Item(1);

Und dann die Klasse:
public class 
Item {
Image img;
   
    public 
Item(int type) {
       if (
type 1) {
           
img // Das Image das du nehmen möchtest
           
[...]
       }


sparrow ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 19.08.2005, 21:31 Nach oben    #10
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Die Idee ist gut, aber dann kommt das nächste Problem, meine Rüstung braucht im gegensatz zur Waffe keine Eigenschafts namens "Schaden".
Wie bekomme ich dann noch verschiedene ItemTypen hin??
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 20.08.2005, 10:38 Nach oben    #11
Sesselkleber
 
Benutzerbild von sparrow
 
Registriert seit: 17.01.2005
Beiträge: 575
Standard

Es wird ja wahrscheinlich mehr als eine Rüstung geben, oder?
Dann nutz doch die Vererbungstechniken von Java und leite einfach eine Klasse Armor von Item ab.

Oder du du nimmst die Variable Schaden in Item mit auf, legst aber nur bei Waffen Schaden mit fest (also Schaden ist dann !=null), bei Rüstungen aber nicht.

Das häte den Vorteil, dass du auch besondere Rüstungen mit aufnehmen könntest die auch Schaden verursachen.


Gruß
Sparrow

PS: Hast du schon eine grafische Oberfläche? Es gibt eine recht gute GameEngine unter http://www.goldenstudios.or.id mit Namen GTGE (Golfen T Game Engine).
Gerade RPGs lassen sich damit hervorragend umsetzen., inkl. Kollisionsabfrage, verwendung von Bitmap-Schriftarten, etc.
sparrow ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.08.2005, 15:29 Nach oben    #12
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Ich hab mal versucht auf die Seite mit der Game Engine zu kommen, aber ich finde die Seite nicht. Könntest du nochen mal schauen ob die Addresse stimmt, denn die Seite interesiert mich?

Danke
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.08.2005, 16:07 Nach oben    #13
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.110
Standard

Klappt bei mir einwandfrei.
__________________
Patrick Gotthardts Weblog.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.08.2005, 17:50 Nach oben    #14
Sesselkleber
 
Benutzerbild von sparrow
 
Registriert seit: 17.01.2005
Beiträge: 575
Standard

Bei mir auch.
Hier nochmal der direkte Link zur Engine

http://www.goldenstudios.or.id/products/GTGE/index.php
sparrow ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 21.08.2005, 20:38 Nach oben    #15
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Funktioniert jetzt
Danke!
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 24.08.2005, 18:33 Nach oben    #16
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Also ich habe jetzt diese Energie runter geladen, und weiß jetzt nichts damit anzufangen.
Wie bekomme ich dieses Teil in die import-Dateien, den ich finde keinen Ordner mit der library meines Borland J-Builder 2005.
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.08.2005, 23:49 Nach oben    #17
matt
Gast
 
Beiträge: n/a
Standard

Nunja, du könntest das über mehrere Klassen lösen:

eine für Nahkampfwaffen, eines für Fernkampfwaffen, eines für Rüstung, etc.

anschließend kannst du ja überprüfen welchen types das Objekt ist

if(myObj instanceof Weapon) { ... }

außerdem sollten alle diese Klasse von einer Basisklasse "Item" abgeleitet werden - diese speichert dann dinge wie das Gewicht, das Bild des Items, etc. Das hat außerdem den Vorteil, dass du dann alles was du im Inventar hast zu der selben Klasse (InventoryItem) casten kannst.

Gewicht als Klassifizierung der Items wäre eventuell eine gute alternative - anstelle der Kästchen aus Diablo. Dann müsstest du nur die Gewichter aller Items aufsummieren, die der Charakter trägt. Ist das beispielsweise größer als seine Stärke * 10, so kann er sich damit nicht bewegen, bzw. er kann nichts aufnehmen, wenn das Traggewicht dann über diesen Schwellenwert gehen würde
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 26.08.2005, 22:36 Nach oben    #18
Sesselkleber
 
Benutzerbild von sparrow
 
Registriert seit: 17.01.2005
Beiträge: 575
Standard

Hi Xean.

Die Engine, also die .jar, brauchst du erstmal nur in deinen Classpath aufnehmen.
Anschließend kannst du die Klassen in deinen Code mit der import Anweisung verwenden und dann frei verwenden.
Das Tutorial in deren Forum sagt recht viel aus.
Dem Download liegt auch die API bei, aber die ist nicht immer ganz verständlich.
Allerdings bringt Paupau im GoldenTForum echt guten Support. Der Mann ist mit Leib und Seele dabei.

Beste Grüße
Sparrow
sparrow ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 01.09.2005, 15:07 Nach oben    #19
Oliver O.
 
Benutzerbild von Xean
 
Registriert seit: 17.08.2005
Beiträge: 426
Standard

Hab hin bekommen...
Geiles teil! Hab schon damit Pong programmiert. Funktioniert besser als ohne GameEngine
Xean ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 02.09.2005, 22:44 Nach oben    #20
Sesselkleber
 
Benutzerbild von sparrow
 
Registriert seit: 17.01.2005
Beiträge: 575
Standard

Jup,

die Indonesier geben sich ziemlich viel Mühe damit.
Nach und nach wirst du weiteren Einblick erhaschen, denke ich.
Und solche Sachen wie Kollision, etc. ist schon ziemlich nett gelöst.
Und die enthaltenen Utility-Klassen zur Bildmanipulation sind auch nicht schlecht.
Ich programmiere recht gerne damit.

Gruß
Sparrow
sparrow ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Knutschendes Pärchen -> Kriminelle Vereinigung -> 20 Jahre Strafe? WarrenFaith Plauderecke 6 17.11.2006 00:09
Java Online RPG (jonrpg) -> Darwincia sparrow Projekte unserer Mitglieder 10 24.02.2006 11:09
Flash -> PHP -> MySQL thrawn Sonstige Programmiersprachen 8 02.02.2006 18:10
include -> html -> php/html Julied64 PHP-Programmierung 2 03.09.2005 12:35
"html(mit css) -> xml -> pdf" möglich ? FsMarine HTML, XML und CSS 0 18.08.2005 08:39


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:17 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44