Ergebnis 1 bis 3 von 3

Thema: Frage zu Ausrüstung (VX)

  1. #1

    Frage zu Ausrüstung (VX)

    Hallo!

    Gibt es eine Möglichkeit das Ablegen von bestimmten Ausrüstungstypen (in meinem Fall Waffen) zu verhindern? Also nur das Ablegen; die Waffe wechseln sollte man schon noch können.

    Danke im Vorraus!

  2. #2
    Falls du die standard RMVX-Actor-Klasse verwendest dann solltest du innerhalb dieser an der Zeile 439 folgendes Script finden:
    Code:
    def change_equip(equip_type, item, test = false)
        last_item = equips[equip_type]
        unless test
          return if $game_party.item_number(item) == 0 if item != nil
          $game_party.gain_item(last_item, 1)
          $game_party.lose_item(item, 1)
        end
        item_id = item == nil ? 0 : item.id
        case equip_type
        when 0  # Weapon
          @weapon_id = item_id
          unless two_hands_legal?             # If two hands is not allowed
            change_equip(1, nil, test)        # Unequip from other hand
          end
        when 1  # Shield
          @armor1_id = item_id
          unless two_hands_legal?             # If two hands is not allowed
            change_equip(0, nil, test)        # Unequip from other hand
          end
        when 2  # Head
          @armor2_id = item_id
        when 3  # Body
          @armor3_id = item_id
        when 4  # Accessory
          @armor4_id = item_id
        end
      end
    Dieses regelt den Wechsel von Equipment.
    Wenn du komplett unterbinden willst, dass ein Ausrüstungsslot leer sein kann dann brauchst du lediglich die folgende Zeile Code an erster Stelle in der Methode einzufügen.
    Code:
    return if item == nil
    Wenn du dieses Verhalten nur für Waffen wünscht dann kannst du die Zeile wie folgt erweitern:
    Code:
    return if item == nil && equip_type == 0
    Das "return" bedeutet hier, dass das Script an dieser Stelle bereits beendet wird, also die kommenden Aktionen nichtmehr ausgeführt werden.
    Das "if item == nil" heist, dass das "return" nur ausgeführt wird falls das Item zu welchem gewechselt werden soll gleich "kein item" ist.
    Das "&& equip_type == 0" bedeutet, dass zusätzlich auch noch die Bedingung erfüllt sein muss, dass der angegebene equipment-Typ 0 ist, 0 steht hierbei für Waffe.
    Also alles in allem: Wenn das item gleich "kein item" ist und der equipment typ gleich <Waffe> ist dann beendet das Script direkt. Packst du diese Zeile also an erster Stelle in die von mir zitierte Methode dann wird keine Waffe mehr abgelegt werden können ohne eine neue auszurüsten.

  3. #3
    Hat geklappt, vielen Dank!

Berechtigungen

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