collapse collapse

 Community


 User Info




Willkommen Gast. Bitte einloggen oder registrieren.

 Partnerseiten

rpgvx.net

Das Forum ist offline

Autor Thema: Custom Battle Screen  (Gelesen 2721 mal)

Offline Onkel Hell

  • Sol Invictus
  • Administrator
  • VX-Kenner
  • ****
  • Beiträge: 562
  • You can't shoot me, I'm AIDS !
Custom Battle Screen
« am: Januar 28, 2008, 23:11:10 »
Moins , da ich grad am battle system rumbaue hab ich nebenbei das battlemenü verändert und möchts euch zur verfügung stellen für den ders möchte
für verbesserungsvorschläge bin ich offen

hier ein paar screenshots
Spoiler for Hiden:





CustomBattleScreen v0.1
Spoiler for Hiden:
#==============================================================================
#  CustomBattleScreen
#  Version : 0.1
#  Created by : hellMinor
#==============================================================================
#==============================================================================
class Window_BattleStatus < Window_Selectable
#==============================================================================
  def initialize
    super(0, 0, 160, 416)
    refresh
    self.active = false
  end
#------------------------------------------------------------------------------
  def item_rect(index)
    rect = Rect.new(0, 0, 0, 0)
    rect.width = 126
    rect.height = 96
    rect.y = index / @column_max * 96
    return rect
  end
#------------------------------------------------------------------------------
  def draw_item(index)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    self.contents.font.color = normal_color
    actor = $game_party.members[index]
    draw_actor_name(actor, 3, rect.y)    
    draw_actor_state(actor, 35, rect.y+20, 48)
    draw_actor_graphic(actor,18,rect.y+55)
    draw_actor_mp(actor, 35, rect.y+45, 88)
    draw_actor_hp(actor, 3, rect.y+65, 120)
  end
#------------------------------------------------------------------------------  
  def draw_actor_name(actor, x, y)
    self.contents.font.color = hp_color(actor)
    self.contents.draw_text(x, y, 108, WLH, actor.name, 1)
  end

end
#==============================================================================
class Window_PartyCommand < Window_Command
#==============================================================================  
  def initialize
    s1 = Vocab::fight
    s2 = Vocab::escape
    super(385, [s1, s2], 2, 1)
    draw_item(0, true)
    draw_item(1, $game_troop.can_escape)
    self.active = false
  end
#------------------------------------------------------------------------------  
  def draw_item(index, enabled = true)
    rect = item_rect(index)
    rect.x += 4
    rect.width -= 8
    self.contents.clear_rect(rect)
    self.contents.font.color = normal_color
    self.contents.font.color.alpha = enabled ? 255 : 128
    self.contents.draw_text(rect, @commands[index], 1)
  end

end
#==============================================================================
class Window_ActorCommand < Window_Command
#==============================================================================  
  def initialize
    super(385, [], 4, 1)
    self.active = false
  end
#------------------------------------------------------------------------------
  def setup(actor)
    s1 = Vocab::attack
    s2 = Vocab::skill
    s3 = Vocab::guard
    s4 = Vocab::item
    if actor.class.skill_name_valid
      s2 = actor.class.skill_name
    end
      @commands = [s1,s2, s3, s4]
      @item_max = 4
    refresh
    self.index = 0
  end
#------------------------------------------------------------------------------
  def draw_item(index, enabled = true)
    rect = item_rect(index)
    rect.x += 4
    rect.width -= 8
    self.contents.clear_rect(rect)
    self.contents.font.color = normal_color
    self.contents.font.color.alpha = enabled ? 255 : 128
    self.contents.draw_text(rect, @commands[index], 1)
  end
  
end
#==============================================================================
class Window_TargetEnemy < Window_Command
#==============================================================================
  def initialize
    commands = []
    @enemies = []
    for enemy in $game_troop.members
      next unless enemy.exist?
      commands.push(enemy.name)
      @enemies.push(enemy)
    end
    super(160, commands, 1, 8)
  end
#------------------------------------------------------------------------------
  def draw_item(index, enabled = true)
    rect = item_rect(index)
    rect.x += 4
    rect.width -= 8
    self.contents.clear_rect(rect)
    self.contents.font.color = normal_color
    self.contents.font.color.alpha = enabled ? 255 : 128
    self.contents.draw_text(rect, @commands[index], 1)
  end
end
#==============================================================================
class Scene_Battle < Scene_Base
#==============================================================================
  def create_info_viewport
    @info_viewport = Viewport.new(0, 0, 544, 480)
    @info_viewport.z = 100
    @status_window = Window_BattleStatus.new
    @party_command_window = Window_PartyCommand.new
    @actor_command_window = Window_ActorCommand.new
    @status_window.viewport = @info_viewport
    @party_command_window.viewport = @info_viewport
    @actor_command_window.viewport = @info_viewport
    @party_command_window.x = 159
    @party_command_window.y = 360
    @status_window.x = 0
    @actor_command_window.x = 159
    @actor_command_window.y = 360
    @actor_command_window.visible = false
    @info_viewport.visible = false
  end
#------------------------------------------------------------------------------  
  def update_info_viewport
    @party_command_window.update
    @actor_command_window.update
    @status_window.update
    if @party_command_window.active
      @party_command_window.visible = true
      @actor_command_window.visible = false
    elsif @actor_command_window.active
      @actor_command_window.visible = true
      @party_command_window.visible = false
    end
  end
#------------------------------------------------------------------------------  
  def start_target_enemy_selection
    @target_enemy_window = Window_TargetEnemy.new
    @target_enemy_window.y = 193
    @info_viewport.rect.x += @target_enemy_window.width
    @info_viewport.ox += @target_enemy_window.width
    @actor_command_window.active = false
  end
#------------------------------------------------------------------------------
  def start_skill_selection
    @help_window = Window_Help.new
    @skill_window = Window_Skill.new(0, 55, 544, 306, @active_battler)
    @skill_window.help_window = @help_window
    @actor_command_window.active = false
  end
#------------------------------------------------------------------------------
  def start_item_selection
    @help_window = Window_Help.new
    @item_window = Window_Item.new(0, 55, 544, 306)
    @item_window.help_window = @help_window
    @actor_command_window.active = false
  end
  
end
Verborgen in der Dunkelheit
Ich kenne nur die Einsamkeit
Auf das kein Gott mich sieht, ich bin ein Eremit


Mega Man Battle Engine


Custom Battle Screen

ERZENGEL

  • Gast
Custom Battle Screen
« Antwort #1 am: Januar 28, 2008, 23:21:20 »
Find ich sehr innovativ mit dem Fenster, in dem der Status angezeigt wird, am Rand. Die Befehle sind unten auch gut angebracht. Nettes Skript und danke dafür, auch wenn ich es nicht benutzen werde, so wird es bestimmt in weiteren Versionen vllt in der VX-Com. oft benützt.
Zu den Verbesserungvorschlägen: Ich sehe im Hintergrund nur schwarz, kann man da noch etwas verändern? Und wenn man dann im Itemfenster ist, sieht man auf der linken Seite noch das Fenster mit den Heldenstatistiken. Wär vllt die einfachste Lösung nur eine Spalte zu machen statt der beiden..?

Custom Battle Screen

Offline Onkel Hell

  • Sol Invictus
  • Administrator
  • VX-Kenner
  • ****
  • Beiträge: 562
  • You can't shoot me, I'm AIDS !
Custom Battle Screen
« Antwort #2 am: Januar 28, 2008, 23:26:14 »
das der hintergrund schwarz is liegt daran das es son battle test is , da is der immer schwarz, im spiel selbst isses der standard blur effect

bei dem item fenster hatte ich das erst rechts neben der heldenstatistik und über der menü in dem schwarzen freien feld , nur dann müsst ich wirklich auf ein item pro zeile umschalten , bei 2en überlappen sich teilweise die items weils bissl klein is
aber ich schau nochma wies mit einer zeile wäre

edit:
jetz fällt mir auch wieder ein warum ich das so gemacht hatte,
das fenster über der auswahl, das helpfenster, wenn man das wesentlich kleiner spinnt der mit dem help text zu dem  item/skill auch noch rum
« Letzte Änderung: Januar 28, 2008, 23:33:18 von hellMinor »
Verborgen in der Dunkelheit
Ich kenne nur die Einsamkeit
Auf das kein Gott mich sieht, ich bin ein Eremit


Mega Man Battle Engine


Custom Battle Screen

Offline Ray Phoenix

  • Event-Jongleur
  • **
  • Beiträge: 86
    • http://
Custom Battle Screen
« Antwort #3 am: April 07, 2008, 20:57:10 »
War das eigentlich sehr schwer zu machen/einszustellen? Ich bin ein absoluter Anfänger im scripten
und wollte mich jetzt mal langsam damit beschäftigen. Was muss ich beispielsweise machen, um
statt den Charsets die Faces zu benutzen? Und meine wichtigste Frage, wie kann ich die Fenster
verschieben?

Custom Battle Screen

Offline Onkel Hell

  • Sol Invictus
  • Administrator
  • VX-Kenner
  • ****
  • Beiträge: 562
  • You can't shoot me, I'm AIDS !
Custom Battle Screen
« Antwort #4 am: April 09, 2008, 13:16:51 »
also die fenster zu verschieben is eignetlich relativ einfach, du brauchst nur die x und y koords der fenster zu verändern , sind im regelfall die ersten beiden angaben bei den fenstern, danach kommt meist die width und dann die height , also breite und höhe
das gesicht da reinzubauen is nich sonderlich aufwendig , statt draw_actor_graphic is das draw_actor_face oder sowas

bezieht sich deine frage auf das hier?
http://i28.photobucket.com/albums/c222/DanyHedge/TEST.png

sieht relativ simpel aus zu machen aus, mal abgesehen das du für jeden char dieses augenpic brauchst
« Letzte Änderung: April 09, 2008, 16:52:39 von hellMinor »
Verborgen in der Dunkelheit
Ich kenne nur die Einsamkeit
Auf das kein Gott mich sieht, ich bin ein Eremit


Mega Man Battle Engine


Custom Battle Screen

Offline Ray Phoenix

  • Event-Jongleur
  • **
  • Beiträge: 86
    • http://
Custom Battle Screen
« Antwort #5 am: April 10, 2008, 16:29:05 »
Genau darauf bezieh ichs. rolleyes.gif\" style=\"vertical-align:middle\" emoid=\":rolleyes:\" border=\"0\" alt=\"rolleyes.gif\" /]
Habs mal ohne Hilfe probiert....verändert sich irgendwie nicht sonderlich viel... aber egal.
Die Actor Faces/Facesets benutz ich als standart so wie geschnitten sind im Menü, ist also
kein Problem. Was ich nicht begreife/verstehe ist die Frage, wie ich welche Koordinaten(x,y) wie
verschieben muss(- oder +) um das so hinzubekommen. Habs schonmal erwähnt, bin ein totaler
Anfänger was scripten betrifft.

Aber danke für die Antwort^^, hilft schon weiter^^

Custom Battle Screen

Offline Onkel Hell

  • Sol Invictus
  • Administrator
  • VX-Kenner
  • ****
  • Beiträge: 562
  • You can't shoot me, I'm AIDS !
Custom Battle Screen
« Antwort #6 am: April 10, 2008, 21:24:28 »
hmm ich könnt ja ein picture battle menu bauen basierend auf deinen grafiken aus dem bild^^
mal schauen was daraus wird
Verborgen in der Dunkelheit
Ich kenne nur die Einsamkeit
Auf das kein Gott mich sieht, ich bin ein Eremit


Mega Man Battle Engine


Custom Battle Screen

Offline Ray Phoenix

  • Event-Jongleur
  • **
  • Beiträge: 86
    • http://
Custom Battle Screen
« Antwort #7 am: April 11, 2008, 10:36:50 »
Das wäre, das wäre.....genial! O____o

Wenn ich dir irgendwie helfen kann, dann sags bitte.^^

 


 Bild des Monats

rooftop party

Views: 3150
By: papilion

 Umfrage

  • Wer soll das BdM gewinnen?
  • Dot Kandidat 1
  • 3 (25%)
  • Dot Kandidat 2
  • 1 (8%)
  • Dot Kandidat 3
  • 2 (16%)
  • Dot Kandidat 4
  • 0 (0%)
  • Dot Kandidat 5
  • 6 (50%)
  • Stimmen insgesamt: 12
  • View Topic

 Schnellsuche





SimplePortal 2.3.3 © 2008-2010, SimplePortal