Neues Menü ...
HuuuHuuu, ich habe
mal eine frage, ob das Möglich wäre, OHNE aufs Menü zu gehen,
das so zu machen, Natürlich mit Icons, die ich hab ^^'
ehm Etwas Kompliziert zu erklären, ich hab ein ein Screen gemacht,
zum Leichteren verständniss,
die Zahlen sollen immer Variiren, wenn man Zb. 2 Bierfässer im Inventar hat,
das dann 40 Bier (Bierkrüge) sein sollen [1Bierfass = 20 Bierkrüge]
mal eine frage, ob das Möglich wäre, OHNE aufs Menü zu gehen,
das so zu machen, Natürlich mit Icons, die ich hab ^^'
ehm Etwas Kompliziert zu erklären, ich hab ein ein Screen gemacht,
zum Leichteren verständniss,
die Zahlen sollen immer Variiren, wenn man Zb. 2 Bierfässer im Inventar hat,
das dann 40 Bier (Bierkrüge) sein sollen [1Bierfass = 20 Bierkrüge]
Screen, Bitte Lächeln
Wäre so etwas möglich?
wäre sehr schoen! =D
also, das Hinter dem Wein eine Weinflasche ist,
Hinter Nickel (Währung) EIn Goldbeutel ist, oder einfach ein Beutel
Hinter dem Brot, ein Brot ist, habe auch ein Passendes Icon ddazu
& hinter dem Bier ein Voller Bierkrug ist, das Icon habe ich auch ^^
Wie gesagt, wäre sehr schoen, wenn das gehen würde, oder wenn es das schon gibt.
LG: Ewen
Edit: So soll es am besten eingezeit werden
Im Inventar >>> Angezeigt werden
1 Weinflasche im Inventar >>> 5 Weingläser (Wein)
1 Brot im Inventar >>> 3 Brote angezeigt
1 Bierfass im Inventar >>> 20 Bierkrüge (Bier)
100 Nickel im Inventar >>> 100 Nickel
wäre sehr schoen! =D
also, das Hinter dem Wein eine Weinflasche ist,
Hinter Nickel (Währung) EIn Goldbeutel ist, oder einfach ein Beutel
Hinter dem Brot, ein Brot ist, habe auch ein Passendes Icon ddazu
& hinter dem Bier ein Voller Bierkrug ist, das Icon habe ich auch ^^
Wie gesagt, wäre sehr schoen, wenn das gehen würde, oder wenn es das schon gibt.
LG: Ewen
Edit: So soll es am besten eingezeit werden
Im Inventar >>> Angezeigt werden
1 Weinflasche im Inventar >>> 5 Weingläser (Wein)
1 Brot im Inventar >>> 3 Brote angezeigt
1 Bierfass im Inventar >>> 20 Bierkrüge (Bier)
100 Nickel im Inventar >>> 100 Nickel
Aus dem Text werd ich nicht schlau, und das Bild beschreibt was anderes oô
Also was genau willst du?
Möchtest du einen HUD, der dir bestimmte Items die du im Menü hast grafisch darstellt?
Oder anstelle des Menüs so eine kleine Anzeige?
Meintest du sowas? [Script angehängt]
Der Code ist eigentlich selbsterklährend. Fueg ihn in ein Projekt ein und gib dem Helden mal Item 1(Heiltrank), Item 26(Beutel) und Item 32(Frucht). Wenn du das meintest, der Code ist leicht selbst anpassbar.
Also was genau willst du?
Möchtest du einen HUD, der dir bestimmte Items die du im Menü hast grafisch darstellt?
Oder anstelle des Menüs so eine kleine Anzeige?
Meintest du sowas? [Script angehängt]
Der Code ist eigentlich selbsterklährend. Fueg ihn in ein Projekt ein und gib dem Helden mal Item 1(Heiltrank), Item 26(Beutel) und Item 32(Frucht). Wenn du das meintest, der Code ist leicht selbst anpassbar.
Wie "Gold dazu"?
Soll das so angezeigt werden wie ein Item?
Es passen aber nur rund 20 Icons auf den Bildschirm (Icongröße 24x24 Pixel), was ist wenn man mal mehr als 20 Goldstücke verdient hat? Oder soll da nur eine Zahl angezeigt werden?
(wenn ich schon beim ersten Post keine Ahnung hatte was du wolltest, wieso meinst du reicht dann diesmal ein halber Satz? =/)
Wenn du bei den Items links von den Icons auch noch die Anzahl der Icons haben willst, editier mein Script wie folgt:
PS: Wieso kommen nur so wenige darauf, das man bei Wünschen zur grafischen Darstellung praktische, maßstabsgetreue Paint Skizzen anfügen kann, damit der Scripter weiss was er tun soll?
Soll das so angezeigt werden wie ein Item?
Es passen aber nur rund 20 Icons auf den Bildschirm (Icongröße 24x24 Pixel), was ist wenn man mal mehr als 20 Goldstücke verdient hat? Oder soll da nur eine Zahl angezeigt werden?
(wenn ich schon beim ersten Post keine Ahnung hatte was du wolltest, wieso meinst du reicht dann diesmal ein halber Satz? =/)
Wenn du bei den Items links von den Icons auch noch die Anzahl der Icons haben willst, editier mein Script wie folgt:
Ab Zeile 47 etwa beginnt die Methode "draw_line(id)", in dieser findest du diesen Block:
und darein fügst du das hier:
das sieht dann so aus
|
|
Ruby Quellcode |
1 2 3 |
# zeichne das Item n mal n = $game_party.item_number(@data[id].item_id) * @data[id].multi n.times do |i| |
|
|
Ruby Quellcode |
1 |
self.bitmap.draw_text(64, 24*id, 64, 24, "#{n}",2) |
|
|
Ruby Quellcode |
1 2 3 4 |
# zeichne das Item n mal n = $game_party.item_number(@data[id].item_id) * @data[id].multi self.bitmap.draw_text(64, 24*id, 64, 24, "#{n}",2) n.times do |i| |
zum Lesen den Text mit der Maus markieren
PS: Wieso kommen nur so wenige darauf, das man bei Wünschen zur grafischen Darstellung praktische, maßstabsgetreue Paint Skizzen anfügen kann, damit der Scripter weiss was er tun soll?
Ok, hier eine Erweiterung:
Fueg Teil1 als neues Script über Main ein [Angehängt]
Und dann musst du noch für die Anzeige sorgen.
Fueg Teil1 als neues Script über Main ein [Angehängt]
Und dann musst du noch für die Anzeige sorgen.
In meinem ersten Post hatte ich ein Script angehängt. In diesem gab's diesen Block:
Diesen ersetzt du mit diesem Block:
|
|
Ruby Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 |
#============================================================================ # ** Scene_Map #============================================================================ class Scene_Map attr_accessor(:inventar_hud) alias_method(:gewohntes_main_pm, :main) if(!method_defined?(:gewohntes_main_pm)) def main() @inventar_hud = Sprite_InventarHUD.new() gewohntes_main_pm @inventar_hud.dispose() end end |
|
|
Ruby Quellcode |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
#============================================================================ # ** Scene_Map #============================================================================ class Scene_Map attr_accessor(:inventar_hud, :gold_hud) alias_method(:gewohntes_main_pm, :main) if(!method_defined?(:gewohntes_main_pm)) def main() @inventar_hud = Sprite_InventarHUD.new() @gold_hud = Sprite_GoldHUD.new() gewohntes_main_pm @inventar_hud.dispose() @gold_hud.dispose() end end |
zum Lesen den Text mit der Maus markieren
Bis Jetzt?
Supper Perfekt, Großes Lob, vielen 1000 Dank, ABER
ein Fehler, wenn man Goldaufnimmt, ich screen das mal
Dazumal, FALS ich ein Fehler gemacht habe die Beiden Menüs
Supper Perfekt, Großes Lob, vielen 1000 Dank, ABER
ein Fehler, wenn man Goldaufnimmt, ich screen das mal

Dazumal, FALS ich ein Fehler gemacht habe die Beiden Menüs

|
|
Quellcode |
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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 |
#============================================================================
# ** Sprite_InventarHUD
#============================================================================
class Sprite_InventarHUD < Sprite
#--------------------------------------------------------------------------
# * Initialize
#--------------------------------------------------------------------------
def initialize(viewport=nil)
super(viewport);
#----------------------------------------------------------
# Array der später die Itemdaten enthält
#----------------------------------------------------------
@data = Array.new(3)
#----------------------------------------------------------
# Sprite Einstellungen
#----------------------------------------------------------
self.x = 0
self.y = 480 - @data.size*24
self.z = 5
#----------------------------------------------------------
# Array füllen:
#----------------------------------------------------------
# fuer jeden Heiltrank(Item#01) im Inventar, wird eine Flasche angezeigt
@data[0]= InventarObjekt.new( 1, "Tränke", "021-Potion01",1)
# fuer jeden Beutel(Item#26) im Inventar werden 5 Federn angezeigt
@data[1]= InventarObjekt.new(26, "Federn", "037-Item06", 5 )
# fuer jeden Apfel(Item#32) im Inventar, wird ein Apfel angezeigt
@data[2]= InventarObjekt.new(32, "Äpfel" , "041-Item10", 1 )
# fuer das Gold (Key#01) im Inventar, werden 2 Gold angezeigt
@data[3]= InventarObjekt.new(30, "Schluessel" , "030-Key02", 7)
#----------------------------------------------------------
self.bitmap = Bitmap.new(640, @data.size*24)
refresh()
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh()
# angezeigtes Bitmap säubern
self.bitmap.clear()
# leichten Schatten zeichnen
self.bitmap.fill_rect(self.bitmap.rect, Color.new(20,20,20,15))
# zeichne alles drauf
@data.each_index{|index| draw_line(index) }
end
#--------------------------------------------------------------------------
# * Zeichne eine Reihe
#--------------------------------------------------------------------------
def draw_line(id)
# zeichne den Namen des InventarObjektes aufs Bitmap
self.bitmap.draw_text(4, 24*id, 128, 24, @data[id].name)
# lade das Icon
src_bitmap = RPG::Cache.icon(@data[id].bild)
# zeichne das Item n mal
n = $game_party.item_number(@data[id].item_id) * @data[id].multi
self.bitmap.draw_text(64, 24*id, 64, 24, "#{n}",2)
n.times do |i|
x_k = 128 + 24*i # Koordinate des Items auf der x-Achse
self.bitmap.blt(x_k, id*24, src_bitmap, src_bitmap.rect)
end
end
end
#============================================================================
# ** InventarObjekt
#============================================================================
class InventarObjekt
def initialize(id, name="Item", bild_name="", multiplikator=1)
@item_id= id # Die ID des Items in der Database
@name = name # der Name der im HUD angezeigt wird
@bild = bild_name # das Bild was angezeigt wird
@multi = multiplikator # der Multiplikator
end
attr_reader(:item_id, :name, :bild, :multi)
end
#============================================================================
#============================================================================
# ->->-> Anzeige auf der Map
#----------------------------------------------------------------------------
# durch diesen Edit (Scene_Map, Interpreter) wird der HUD auf der Map an-
# gezeigt und auch geupdatet.
#============================================================================
#============================================================================
#============================================================================
# ** Scene_Map
#============================================================================
class Scene_Map
attr_accessor(:inventar_hud, :gold_hud)
alias_method(:gewohntes_main_pm, :main) if(!method_defined?(:gewohntes_main_pm))
def main()
@inventar_hud = Sprite_InventarHUD.new()
@gold_hud = Sprite_GoldHUD.new()
gewohntes_main_pm
@inventar_hud.dispose()
@gold_hud.dispose()
end
end
#==============================================================================
# ** Interpreter
#==============================================================================
class Interpreter
alias_method(:change_items, :command_126) if(!method_defined?(:change_items))
#--------------------------------------------------------------------------
# * Change Items
#--------------------------------------------------------------------------
def command_126
change_items()
if $scene.class == Scene_Map then
$scene.inventar_hud.refresh()
end
return true;
end
end |
zum Lesen den Text mit der Maus markieren
|
|
Quellcode |
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 |
#-------------------------------------------------------------------------- def initialize(viewport=nil) super(viewport); self.z = 10 self.bitmap = Bitmap.new(160, 32) refresh() end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh() # angezeigtes Bitmap säubern self.bitmap.clear() # leichten Schatten zeichnen self.bitmap.fill_rect(self.bitmap.rect, Color.new(20,20,20,15)) # lade das Icon src_bitmap = RPG::Cache.icon( "032-Item01" ) # zeichne das Icon aufs Bitmap self.bitmap.blt(4, 4, src_bitmap, src_bitmap.rect) # zeichne den Text cx = self.bitmap.text_size($data_system.words.gold).width self.bitmap.font.color = Color.new(255, 255, 255, 255) self.bitmap.draw_text(4, 0, 152-cx-2, 32, $game_party.gold.to_s, 2) self.bitmap.font.color = Color.new(192, 224, 255, 255) self.bitmap.draw_text(156-cx, 0, cx, 32, $data_system.words.gold, 2) end end #============================================================================== # ** Interpreter #============================================================================== class Interpreter alias_method(:change_gold, :command_126) if(!method_defined?(:change_gold)) #-------------------------------------------------------------------------- # * Change Gold #-------------------------------------------------------------------------- def command_125 change_gold() if $scene.class == Scene_Map then $scene.gold_hud.refresh() end return true; end end |
zum Lesen den Text mit der Maus markieren
Playm?
Ich Danke dir Sehr Herzlich, für das Gelungene 'Menü'
bekommst ein Creadit eintrag
Ps: es Funkt es Einbahnfrei!
& es stand 126 anstadt 125 *fg*
Wie gesagt, nochmal Rechtherzlichen Dank!
---
LG: Ewen!
Thema kann geschloßen werden
Ich Danke dir Sehr Herzlich, für das Gelungene 'Menü'

bekommst ein Creadit eintrag

Ps: es Funkt es Einbahnfrei!

& es stand 126 anstadt 125 *fg*
Wie gesagt, nochmal Rechtherzlichen Dank!

---
LG: Ewen!
Thema kann geschloßen werden
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Playm« (14. März 2010, 20:45) aus folgendem Grund: Thema, auf Wunsch, geschlossen
Ähnliche Themen
-
Skript-Anfragen »-
Animierter Titel
(22. Februar 2010, 13:32)
-
Skript-Anfragen »-
Ich bin auf der Suche nach einem Final Fantasy XII Menu
(7. Februar 2010, 23:40)
-
Skript-Anfragen »-
Menü Script Bitte Hilfe (kein neues Menu nur Änderung)
(6. Februar 2010, 19:10)
-
Skript-Anfragen »-
Brauche KOMPLETTES RINGEMNU!
(30. August 2007, 17:48)
