• Login

Dear visitor, welcome to RPG Studio - Make your World real. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

Cryztal

Knappe

  • "Cryztal" started this thread

Motto: Ich mag das Gefühl von völliger Ungezwungenheit. Dann bin ich am besten, würde ich sagen.

  • Send private message

1

Friday, September 26th 2014, 9:36pm

Shining Wings Script

Hallöchen,

Ich hatte vor einiger Zeit mal mit Playm über ein Skript gesprochen das wie folgt funktioniert:

-Zum einen beinhaltet es die Funktionen eines Visual_Equipment_Script. (Ob das jetzt nur für die Flügel oder für alles gilt bleibt Playm überlassen)
-Zum anderen erhält der Spieler einen Leuchtkreis um sich herum der mit der ScreenColor nicht kollidiert. (heißt bspw. bei 20% weniger Licht strahlt der Kreis 20% heller)
-Zusätzlich ist das Lauftempo des Spielers um ein kleines Bisschen erhöht.
-Es wurde über ein Feature gesprochen mit dem der Spieler 2 oder mehr Felder mit den Flügeln springen kann.
-Sofern die Flügel anliegen können Statuseffekte hinzugefügt werden.
-Sofern die Flügel anliegen können Switches aktiviert oder deaktiviert werden.

Dazu gekommen sind jetzt noch ein paar Ideen.

-Der Kreis soll verstellbar groß sein. Z.B. 1Feld 1,5Felder 2Felder etc.
-Innerhalb des Kreises befindliche Events sollen ggf. einen Switch auslösen können um z.B. Schattenmonster ihrer Rüstung zu berauben.
-Damit es nicht zu Problemen führt sollte ein einfacher Befehl das Leuchten der Flügel und des Kreises beenden falls der Spieler z.B. schlafen geht.
-Es wäre super wenn sich das Charset der Flügel von alleine weiterbewegen würde egal ob der Player sich bewegt oder nicht.

Das wäre vorerst alles :3
lg Cryztal
Ich habe kein Talent.
Meister Tentakel besitzt das ganze Talent.

Playm

RPG Studio Webmaster

  • Send private message

2

Friday, September 26th 2014, 11:55pm

Quoted

-Zum anderen erhält der Spieler einen Leuchtkreis um sich herum der mit der ScreenColor nicht kollidiert. (heißt bspw. bei 20% weniger Licht strahlt der Kreis 20% heller)

Also der Screencolor Tone soll keinen Einfluss auf den Leuchtkreis haben? Sicher, dass das gut aussieht?

Cryztal

Knappe

  • "Cryztal" started this thread

Motto: Ich mag das Gefühl von völliger Ungezwungenheit. Dann bin ich am besten, würde ich sagen.

  • Send private message

3

Saturday, September 27th 2014, 1:02pm

Ich dachte halt das es besser aussieht, meinst du es wäre besser wenn es nicht so wäre?
Ich habe kein Talent.
Meister Tentakel besitzt das ganze Talent.

Playm

RPG Studio Webmaster

  • Send private message

4

Saturday, September 27th 2014, 7:52pm

Fand gerade das Schweben ganz interessant, weswegen ich dazu mal was geschrieben habe.
Das ist aber kein fertiges Skript und auch kaum kommentiert (aktiviere Switch1 um in den Flugmodus zu gehen), die aktuelle Phase des Schwebens sollte eigentlich besser in Game_Player als in Sprite_Character, aber das dient jetzt nur erstmal um den Effekt vorzustellen - wenn das gefällt, sollte man das nochmal etwas neu ordnen.

Spoiler: Game_

Ruby Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#==============================================================================
# ** Game_Player
#------------------------------------------------------------------------------
#  
#==============================================================================
class Game_Player < Game_Character
  #--------------------------------------------------------------------------
  # * Benutzt der Held gerade seine Flügel?
  #--------------------------------------------------------------------------
  def wings_armed?
    $game_switches[1]
  end
end
#==============================================================================
# ** Game_Character
#==============================================================================
class Game_Character
  #--------------------------------------------------------------------------
  # * Benutzt die Figur gerade ihre Flügel? Für Nicht-Helden immer false.
  #--------------------------------------------------------------------------
  def wings_armed?
    false
  end
end
highlight to read

Spoiler: Sprite_Wingarmed_Shadow

Ruby Source code

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
#==============================================================================
# ** Sprite_Wingarmed_Shadow
#------------------------------------------------------------------------------
#  Zeigt unter dem Helden einen Schatten an, wenn er schwebt.
#==============================================================================
class Sprite_Wingarmed_Shadow < Sprite
  #--------------------------------------------------------------------------
  # * 
  #--------------------------------------------------------------------------
  def initialize( vp = nil, character = nil )
    super(vp)
    @character = character
    self.bitmap = RPG::Cache.character("Shadow",0)
    self.ox = self.bitmap.width / 2
    self.oy = self.bitmap.height
    self.opacity = 127
  end
  #--------------------------------------------------------------------------
  # * 
  #--------------------------------------------------------------------------
  def update
    self.x = @character.screen_x
    self.y = @character.screen_y
    self.z = @character.screen_z
    self.visible = @character.wings_armed?
  end
end
highlight to read

Spoiler: Sprite_Character

Ruby Source code

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
#==============================================================================
# ** Sprite_Character
#------------------------------------------------------------------------------
#  Erweiterte die Klasse um die Eigenschaft zu schweben.
#==============================================================================
class Sprite_Character
  #--------------------------------------------------------------------------
  # * Alias
  #--------------------------------------------------------------------------
  alias_method(:org_update_wo_wings, :update)
  alias_method(:org_ini_wo_wings, :initialize)
  #--------------------------------------------------------------------------
  # * Initialize
  #--------------------------------------------------------------------------
  def initialize(*args)
    # Standardwerte
    @phase                 = :grounded
    @altitude              = 0
    @character_wings_armed = false
    # Originale Initializeverarbeitung
    org_ini_wo_wings(*args)
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    # Originale Updateverarbeitung
    org_update_wo_wings
    # Aktualisiere den Flügelstatus
    if @character_wings_armed != @character.wings_armed?
      @phase= (@character_wings_armed == false) ? :start_flying : :end_flying
      @character_wings_armed = @character.wings_armed?
    end
    # Bewege den Char, je nach Phase in der er sich befindet
    case @phase
    when :start_flying
      @altitude += 1
      @phase = :move_up if @altitude == minimal_flying_altitude
    when :end_flying
      @altitude -= 1
      @phase = :grounded if @altitude == 0
    when :move_up
      @altitude += 1
      @phase = :move_down if @altitude == maximal_flying_altitude
    when :move_down
      @altitude -= 1
      @phase = :move_up if @altitude == minimal_flying_altitude
    when :grounded
      @altitude = 0
    end
    # Ändere die vertikale Ausrückung des Sprites
    self.oy = ((@tile_id >= 384) ? 32 : @ch) + @altitude / 4
  end
  #--------------------------------------------------------------------------
  # * Maximale Ausrückung
  #--------------------------------------------------------------------------
  def maximal_flying_altitude
    48 #12
  end
  #--------------------------------------------------------------------------
  # * Minimale Ausrückung
  #--------------------------------------------------------------------------
  def minimal_flying_altitude
    24 #6
  end
end
highlight to read

Spoiler: Spriteset_Map

Ruby Source code

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
#==============================================================================
# ** Spriteset_Map
#==============================================================================
class Spriteset_Map
  #--------------------------------------------------------------------------
  # * Alias
  #--------------------------------------------------------------------------
  alias_method(:org_ini_wo_wings, :initialize)
  alias_method(:org_upd_wo_wings, :update)
  alias_method(:org_dsp_wo_wings, :dispose)
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize
    org_ini_wo_wings
    @wingarmed_shadow_sprite = Sprite_Wingarmed_Shadow.new(@viewport1,$game_player)
  end
  #--------------------------------------------------------------------------
  # * Dispose
  #--------------------------------------------------------------------------
  def dispose
    @wingarmed_shadow_sprite.dispose
    org_dsp_wo_wings
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    @wingarmed_shadow_sprite.update if @wingarmed_shadow_sprite
    org_upd_wo_wings
  end
end
highlight to read


Shadow.png müsste in den Graphic/Characters Ordner.
Playm has attached the following image:
  • Shadow.png

Cryztal

Knappe

  • "Cryztal" started this thread

Motto: Ich mag das Gefühl von völliger Ungezwungenheit. Dann bin ich am besten, würde ich sagen.

  • Send private message

5

Saturday, October 4th 2014, 2:48pm

Hallo Playm,

sorry für die späte Antwort bei mir gibts nun doch wieder einige Komplikationen beim Thema Internet.
Leider bin ich durch diese Komplikationen bisher noch nicht dazu gekommen dein Skript zu testen. :/
Ich versuche nun so schnell es geht alles wieder ans laufen zu kriegen und bedanke mich dennoch schon einmal für die Arbeit die du dir gemacht hast.

lg Crzytal
Ich habe kein Talent.
Meister Tentakel besitzt das ganze Talent.

Playm

RPG Studio Webmaster

  • Send private message

6

Sunday, October 5th 2014, 11:34pm

Hallo Cryztal,

kam noch nicht dazu daran weiterzuarbeiten, also nur kein Stress. :-)

Du und dein Internet ist auch so eine Sache für sich, ne? Wirklich rund läuft das wohl nie :-P

Cryztal

Knappe

  • "Cryztal" started this thread

Motto: Ich mag das Gefühl von völliger Ungezwungenheit. Dann bin ich am besten, würde ich sagen.

  • Send private message

7

Monday, October 6th 2014, 11:08am

Haha. Naja noch nicht. Kann sich nur noch um Monate handeln, dann läufts flüssig (also echt jetzt). xD aber provisorisch wieder laufen wird es schon in den nächsten tagen wieder. Dann werd ich mich nochmal intensiv um alles rund um dieses und andere rmxp Themen kümmern. :)
PS ich Verbleib erstmal so und melde mich dann wenn ich es testen konnte. :)
Ich habe kein Talent.
Meister Tentakel besitzt das ganze Talent.

Used tags

rmxp, Script

Social bookmarks