Ergebnis 1 bis 7 von 7

Thema: Suche Skript oder Tipp um Nebel im Kampf sichtbar zu machen

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Was T-Free sagt stimmt so überhaupt nicht. Da du im RPG Maker XP das Standard Kampfsystem ganz einfach umskripten kannst, ist es nicht so tragisch den Nebel einzubauen wie er es darstellt. Prinzipiell musst du einfach nur nachsehen, wie der Neben implementiert wurde. Schau dazu einfach mal bei Spriteset_Map nach, und sieh dir an wie du das ins Spriteset_Battle übertragen kannst.

  2. #2
    Danke, hat super geklappt , jetzt nur noch den Nebel so einstellen können das er sich bewegt.

    Hier ist das veränderte Script, mit unbewegtem Nebel.

    # ■ Spriteset_Battle
    class Spriteset_Battle
    attr_reader :viewport1
    attr_reader :viewport2
    def initialize
    @viewport1 = Viewport.new(0, 0, 640, 320)
    @viewport2 = Viewport.new(0, 0, 640, 480)
    @viewport3 = Viewport.new(0, 0, 640, 480)
    @viewport4 = Viewport.new(0, 0, 640, 480)
    @viewport2.z = 101
    @viewport3.z = 200
    @viewport4.z = 5000
    @battleback_sprite = Sprite.new(@viewport1)
    @enemy_sprites = []
    for enemy in $game_troop.enemies.reverse
    @enemy_sprites.push(Sprite_Battler.new(@viewport1, enemy))
    # Fog
    @fog = Plane.new(@viewport2)
    @fog.z = 3000
    end
    @actor_sprites = []
    @actor_sprites.push(Sprite_Battler.new(@viewport2))
    @actor_sprites.push(Sprite_Battler.new(@viewport2))
    @actor_sprites.push(Sprite_Battler.new(@viewport2))
    @actor_sprites.push(Sprite_Battler.new(@viewport2))
    @weather = RPG::Weather.new(@viewport1)
    @picture_sprites = []
    for i in 51..100
    @picture_sprites.push(Sprite_Picture.new(@viewport3,
    $game_screen.pictures[i]))
    end
    @timer_sprite = Sprite_Timer.new
    update
    end

    def dispose
    if @battleback_sprite.bitmap != nil
    @battleback_sprite.bitmap.dispose
    end
    @battleback_sprite.dispose
    for sprite in @enemy_sprites + @actor_sprites
    sprite.dispose
    end
    @weather.dispose
    for sprite in @picture_sprites
    sprite.dispose
    end
    @timer_sprite.dispose
    @viewport1.dispose
    @viewport2.dispose
    @viewport3.dispose
    @viewport4.dispose
    end
    def effect?
    for sprite in @enemy_sprites + @actor_sprites
    return true if sprite.effect?
    end
    return false
    end

    def update
    @actor_sprites[0].battler = $game_party.actors[0]
    @actor_sprites[1].battler = $game_party.actors[1]
    @actor_sprites[2].battler = $game_party.actors[2]
    @actor_sprites[3].battler = $game_party.actors[3]
    if @battleback_name != $game_temp.battleback_name
    @battleback_name = $game_temp.battleback_name
    if @battleback_sprite.bitmap != nil
    @battleback_sprite.bitmap.dispose
    end
    @battleback_sprite.bitmap = RPG:ache.battleback(@battleback_name)
    @battleback_sprite.src_rect.set(0, 0, 640, 320)
    end
    if @fog_name != $game_map.fog_name or @fog_hue != $game_map.fog_hue
    @fog_name = $game_map.fog_name
    @fog_hue = $game_map.fog_hue
    if @fog.bitmap != nil
    @fog.bitmap.dispose
    @fog.bitmap = nil
    end
    if @fog_name != ""
    @fog.bitmap = RPG:ache.fog(@fog_name, @fog_hue)
    end
    Graphics.frame_reset
    end
    @fog.zoom_x = $game_map.fog_zoom / 100.0
    @fog.zoom_y = $game_map.fog_zoom / 100.0
    @fog.opacity = $game_map.fog_opacity
    @fog.blend_type = $game_map.fog_blend_type
    @fog.tone = $game_map.fog_tone

    for sprite in @enemy_sprites + @actor_sprites
    sprite.update
    end
    @weather.type = $game_screen.weather_type
    @weather.max = $game_screen.weather_max
    @weather.update
    for sprite in @picture_sprites
    sprite.update
    end
    @timer_sprite.update
    @viewport1.tone = $game_screen.tone
    @viewport1.ox = $game_screen.shake
    @viewport4.color = $game_screen.flash_color
    @viewport1.update
    @viewport2.update
    @viewport4.update
    end
    end

    Geändert von Satyre (31.05.2008 um 16:16 Uhr)

  3. #3
    Dann stell eben den Z-Wert des Nebels höher. In der Zeile "@fog.z = 3000".

    Beim XP kann btw nicht nur ich, sondern jeder recht leicht Dinge "umskripten bzw ändern".

  4. #4
    Habe oben das Script (für den Standard-Kampf) wieder verändert, so dass keine Fehler mehr entstehen. Das Ergebnis sieht so aus: http://img230.imageshack.us/img230/4015/testim0.png

    Würde gern noch die Bewegung hinbekommen, und den selben Effekt auf Wetter übertragen. Beim Wetter ist kein Viewport angegeben und weiß noch nicht wie ich den z-Wert da verändere.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •