RPGVX.net

  RPG-Maker VX => VX Skripte [Fertiger Code] => Thema gestartet von: Evil95 am Juli 26, 2008, 14:50:41

Titel: WASD-Steuerung 1.1 (UPDATED)
Beitrag von: Evil95 am Juli 26, 2008, 14:50:41
WASD-Steuerung
Version: 1.12  (6.8.08)
Von: Evil95

Was macht das Script?
Mit Hilfe dieses Scripts wird die Spielsteuerung so verändert, dass man anstatt
der Pfeiltasten die WASD-Tasten nutzen kann.

Anleitung
RGSS2-Teil
1. Das Script einfach über Main einfügen.
2. in Line 79 die 1 mit der Nummer des Switch ersetzen, der zum aktiveren des
Common Event-Teil benötigt wird.

Event-Teil
Enterweder unten den Code in ein Common Event übertragen oder die Demo saugen und
Copy & Paste nutzen. ;)

Changelog
Version 1.12
- RGSS2-Teil aktualisiert
  - Das Script ist kürzer und sollte nun auch mit selbst veränderten "command_new_game" zurecht kommen
Version 1.1
- RGSS2-Teil aktualisiert
  - im Menü konnte es passieren, dass
    man von einem Char zu nächsten sprang, wenn man W drückte
Version 1.0
- Ininitial-Release

Screenshots
Geht etwas schlecht^^

Script
RGSS2
#==============================================================================
# WASD-Steuerung (RGSS2-Teil)
# ----------------------------------------------------------------------------
# Version 1.12 (6.8.08)
# Von Evil95
#==============================================================================
class Window_Selectable < Window_Base
 def update
  super
  if cursor_movable?
    last_index = @index
    if Input.repeat?(Input::Y) # Y = S auf der Tastertur
      cursor_down(Input.trigger?(Input::Y))
      end
      if Input.repeat?(Input::R) # R = W auf der Tastertur
        cursor_up(Input.trigger?(Input::R))
      end
      if Input.repeat?(Input::Z) # Z = D auf der Tastertur
        cursor_right(Input.trigger?(Input::Z))
      end
      if Input.repeat?(Input::X) # X = A auf der Tastertur
        cursor_left(Input.trigger?(Input::X))
      end
      if Input.press?(Input::DOWN)
        cursor_pagedown
      end
      if Input.press?(Input::UP)
        cursor_pageup
      end
      if @index != last_index
        Sound.play_cursor
      end
    end
    update_cursor
    call_update_help
  end
end

class Game_Player < Game_Character
  def move_by_input
    return unless movable?
    return if $game_map.interpreter.running?
    if Input.press?(Input::UP)
    end
    if Input.press?(Input::LEFT)
    end
    if Input.press?(Input::RIGHT)
    end
    if Input.press?(Input::DOWN)
    end
  end
end

class Scene_Status < Scene_Base
  def update
  update_menu_background
  @status_window.update
  if Input.trigger?(Input::B)
    Sound.play_cancel
    return_scene
  elsif Input.trigger?(Input::DOWN)
    Sound.play_cursor
    next_actor
  elsif Input.trigger?(Input::UP)
    Sound.play_cursor
    prev_actor
  end
  super
end
end

class Scene_Equip < Scene_Base
  def update_equip_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      return_scene
    elsif Input.trigger?(Input::DOWN)
      Sound.play_cursor
      next_actor
    elsif Input.trigger?(Input::UP)
      Sound.play_cursor
      prev_actor
    elsif Input.trigger?(Input::C)
      if @actor.fix_equipment
        Sound.play_buzzer
      else
        Sound.play_decision
        @equip_window.active = false
        @item_window.active = true
        @item_window.index = 0
      end
    end
  end
end

class Scene_Skill < Scene_Base
  def update_skill_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      return_scene
    elsif Input.trigger?(Input::DOWN)
      Sound.play_cursor
      next_actor
    elsif Input.trigger?(Input::UP)
      Sound.play_cursor
      prev_actor
    elsif Input.trigger?(Input::C)
      @skill = @skill_window.skill
      if @skill != nil
        @actor.last_skill_id = @skill.id
      end
      if @actor.skill_can_use?(@skill)
        Sound.play_decision
        determine_skill
      else
        Sound.play_buzzer
      end
    end
  end
end

class Scene_NameInput < Scene_Base
  def update
    super
    last_mode = @mode
    last_index = @index
    if Input.repeat?(Input::DOWN)
      cursor_down(Input.trigger?(Input::DOWN))
    end
    if Input.repeat?(Input::UP)
      cursor_up(Input.trigger?(Input::UP))
    end
    if Input.repeat?(Input::RIGHT)
      cursor_right(Input.trigger?(Input::RIGHT))
    end
    if Input.repeat?(Input::LEFT)
      cursor_left(Input.trigger?(Input::LEFT))
    end
    if Input.trigger?(Input::A)
      cursor_to_decision
    end
    if Input.trigger?(Input::DOWN)
      cursor_pagedown
    end
    if Input.trigger?(Input::UP)
      cursor_pageup
    end
    if Input.trigger?(Input::C) and is_mode_change
      cursor_pagedown
    end
    if @index != last_index or @mode != last_mode
      Sound.play_cursor
    end
    update_cursor
  end
end
#===============================================================================
# Dient dazu, dass der Switch, hier 1, sofort nach einen New_Game angeht, sodass
# die Steuerung sofort übernommen wird.
#===============================================================================
class Scene_Title < Scene_Base
  alias old_new_game command_new_game
  def command_new_game
    old_new_game
    $game_switches[40] = true #Steuerung
  end
end

Common Event
Name: WASD Steuerung ( kann geändert werden)
Trigger: Parallel
Condition switch: 0001: WASD-Steuerung (kann geändert werden | Muss mit dem Switch aus dem RGSS2-Teil übereinstimmen)

@>Conditional Branch: Script: $game_map.interpreter.running?
   @>
 : Else
   @>Conditional Branch: The R Button is Being Pressed
     @>Set Move Route: Player (Skip, Wait)
     :               : $>Move Up
     @>
   : Branch End
   @>Conditional Branch: The X Button is Being Pressed
     @>Set Move Route: Player (Skip, Wait)
     :               : $>Move left
     @>
   : Branch End
   @>Conditional Branch: The Y Button is Being Pressed
     @>Set Move Route: Player (Skip, Wait)
     :               : $>Move Down
     @>
   : Branch End
   @>Conditional Branch: The Z Button is Being Pressed
     @>Set Move Route: Player (Skip, Wait)
     :               : $>Move Right
     @>
   : Branch End
   @>
 : Branch End
@>

Demo-Download
Klick (nur ~ 400 KB) (http://demonvx.kilu.de/Anderes/RPGVX/Scripts/WASD-Steuerung/WASD-Steuerung%201.0.exe)

Abschließende Worte
Joa ich hoffe euch gefällt mein Script. Habt spass damit und seit nicht zu hart bei der Kritik^^.  Viel spass damit. :)
Titel: Re: WASD-Steuerung 1.0
Beitrag von: eugene222 am Juli 26, 2008, 14:56:54
Hallo, dein Skript gefällt mir, wobei ich nur eine Frage hab.
Steuert man alles mit WASD oder nur den Charackter. Ich meine kann man damit auch im Menu steuern?
Titel: Re: WASD-Steuerung 1.0
Beitrag von: Evil95 am Juli 26, 2008, 14:58:32
Ja man steuert alles mit WASD. Laufen, Kämpfen, Debug, Shop, Menüs..:D
Titel: Re: WASD-Steuerung 1.0
Beitrag von: eugene222 am Juli 26, 2008, 15:00:30
Geil man, ich bau das gleich ein, aber wozu braucht man das Common Event?
Titel: Re: WASD-Steuerung 1.0
Beitrag von: Evil95 am Juli 26, 2008, 15:03:13
Um auch auf der Map mit WASD zu laufen. Dies habe ich leider nicht per RGSS2 hinbekommen^^ bzw ich könnte es machen, aber dann wäre 8-Direction drin (wieso auch immer) und das kann ich aber nicht leiden. also habe ich es erst einmal so gemacht.
Titel: Re: WASD-Steuerung 1.0
Beitrag von: eugene222 am Juli 26, 2008, 15:04:23
Ok, ist trozdem geil und son Common Event stört nicht...
Titel: Re: WASD-Steuerung 1.0
Beitrag von: Dainreth am Juli 26, 2008, 17:10:55
Nette Idee, vielleicht hat's der ein oder andere lieber mit WASD zu steuern. Also Danke für das Skript!
Titel: Re: WASD-Steuerung 1.1 (UPDATED)
Beitrag von: Mr.Wolna am Januar 25, 2009, 13:34:52
und hier sage ich nochmal, danke wasd combo ist ein muss für mich.


btw: ich fidne es ne unverschämheit das der VX zum kaufen freigegeben wird, aber die devs solche sachen nicht von haus aus implitieren *kopfschüttel*
Titel: Re: WASD-Steuerung 1.1 (UPDATED)
Beitrag von: _D3nn!§_ am November 09, 2009, 19:57:50
hallo

dein WASD script gefällt mir bis auf eins:

irgendwie kann man mit der WASD Steuerung nicht rennen .

Könntest du das irgendwie in den script einbauen
Titel: Re: WASD-Steuerung 1.1 (UPDATED)
Beitrag von: Evil95 am November 09, 2009, 20:05:03
nach über einem jahr pause in sachen rpg-maker sieht das schlecht aus. sry
müsste mich erstmal wieder reinfinden...dazu habe ich aber derzeit keine zeit und lust.
Titel: Re: WASD-Steuerung 1.1 (UPDATED)
Beitrag von: Master Chain am Januar 05, 2010, 20:00:31
Netter Script leider kann man damit nicht rennen

____________
Die letzte Meldung vom Autor ist fast 2 Monate her, vermeide bitte das Necroposting.

MfG
Deity
SimplePortal 2.3.3 © 2008-2010, SimplePortal