Ich vermute du suchst dieses Script :
Einfach anpassen wie weit du es brauchst und viel spaß damit
#==============================================================================
# On Map Regeneration Script v. 1.09
# by Caldaron (01.11.2006)
#==============================================================================
# DESCRIPTIONS
#==============================================================================
#--------------------------------------------------------------------------
# USE_HP/SP_MAPS: true: HP/SP Regeneration außer auf HP/SP_MAPS
# false: HP/SP Regeneration nur auf HP/SP_MAPS
# HP/SP_WEAPONS: Waffen ID ermöglicht HP/SP Regeneration
# HP/SP_ARMORS: Rüstungs ID ermöglicht HP/SP Regeneration
# HP/SP_WAIT: Wartezeit bis Regeneration stattfindet
# sollte maximal erreichbarer HP/SP Wert entsprechen
# HP/SP_REG: Wert um den HP/SP regeneriert wird
# HP/SP_PERCENT: true: HP/SP_REG als Prozentanteil
# HP/SP_STOP: Status ID der Regeneration verhindert
#
# $game_map.
# hp/sp_switch[ID]=: true: Ermöglicht HP/SP Regeneration
# hp/sp_time[ID]=x: Ermöglicht x-malige HP/SP Regeneration
# hp/sp_mod[ID]=x: x%ige HP/SP Regenerationsgeschwindigekeit
# ID = actor.id-1
#--------------------------------------------------------------------------
#==============================================================================
#==============================================================================
module Regenerate
USE_HP_MAPS = false
USE_SP_MAPS = false
HP_MAPS = []
SP_MAPS = []
HP_WEAPONS = []
SP_WEAPONS = []
HP_ARMORS = []
SP_ARMORS = []
HP_WAIT = 9999
SP_WAIT = 9999
HP_REG = 1
SP_REG = 1
HP_PERCENT = false
SP_PERCENT = false
HP_STOP = [1]
SP_STOP = [1]
end
#==============================================================================
class Game_Map
#--------------------------------------------------------------------------
attr_accessor :hp_mod
attr_accessor :sp_mod
attr_accessor :hp_switch
attr_accessor :sp_switch
attr_accessor :hp_time
attr_accessor :sp_time
attr_accessor :hp_wait
attr_accessor :sp_wait
#--------------------------------------------------------------------------
alias map_reg_init initialize
def initialize
@hp_mod = []
@sp_mod = []
@hp_switch = []
@sp_switch = []
@hp_time = []
@sp_time = []
@hp_wait = []
@sp_wait = []
($data_actors.size-1).times do
@hp_mod.push(100)
@hp_switch.push(false)
@hp_wait.push(0)
@hp_time.push(0)
@sp_mod.push(100)
@sp_switch.push(false)
@sp_wait.push(0)
@sp_time.push(0)
end
map_reg_init
end
#--------------------------------------------------------------------------
alias map_reg_update update
def update
for actor in $game_party.actors
i = actor.id
i -= 1
@actor = actor
@hp_wait -= 1
@sp_wait[i] -= 1
if (Regenerate::USE_HP_MAPS and not Regenerate::HP_MAPS.include?(@map_id)) or
Regenerate::HP_WEAPONS.include?(actor.weapon_id) or
Regenerate::HP_ARMORS.include?(actor.armor1_id) or
Regenerate::HP_ARMORS.include?(actor.armor2_id) or
Regenerate::HP_ARMORS.include?(actor.armor3_id) or
Regenerate::HP_ARMORS.include?(actor.armor4_id) or
@hp_switch or @hp_time[i] > 0 or
(Regenerate::USE_HP_MAPS == false and Regenerate::HP_MAPS.include?(@map_id))
if @hp_wait[i] < 1
@hp_time[i] -= 1 if @hp_time[i] > 0
@actor.hp_reg
if Regenerate::HP_PERCENT
@hp_wait[i] = Regenerate::HP_WAIT/(@actor.maxhp * (@actor.maxhp/(Regenerate::HP_REG*100)) * (@hp_mod[i]/100.00))
else
@hp_wait[i] = Regenerate::HP_WAIT/(@actor.maxhp * Regenerate::HP_REG * (@hp_mod[i]/100.00))
end
end
end
if (Regenerate::USE_SP_MAPS and not Regenerate::SP_MAPS.include?(@map_id)) or
Regenerate::SP_WEAPONS.include?(actor.weapon_id) or
Regenerate::SP_ARMORS.include?(actor.armor1_id) or
Regenerate::SP_ARMORS.include?(actor.armor2_id) or
Regenerate::SP_ARMORS.include?(actor.armor3_id) or
Regenerate::SP_ARMORS.include?(actor.armor4_id) or
@sp_switch or @sp_time[i] > 0 or
(Regenerate::USE_SP_MAPS == false and Regenerate::SP_MAPS.include?(@map_id))
if @sp_wait[i] < 1
@sp_time[i] -= 1 if @sp_time[i] > 0
@actor.sp_reg
if @actor.maxsp != 0
if Regenerate::HP_PERCENT
@sp_wait[i] = Regenerate::SP_WAIT/(@actor.maxsp * (@actor.maxsp/(Regenerate::SP_REG*100)) * (@sp_mod[i]/100.00))
else
@sp_wait[i] = Regenerate::SP_WAIT/(@actor.maxsp * Regenerate::SP_REG * (@sp_mod[i]/100.00))
end
end
end
end
end
map_reg_update
end
#--------------------------------------------------------------------------
end
#==============================================================================
class Game_Actor
#--------------------------------------------------------------------------
def stop_reg(type)
case type
when 0
for i in Regenerate::HP_STOP
if self.state?(i)
return true
end
end
when 1
for i in Regenerate::SP_STOP
if self.state?(i)
return true
end
end
end
return false
end
#--------------------------------------------------------------------------
def hp_reg
i = -1 + id
@mod = $game_map.hp_mod[i]
if not self.stop_reg(0) and not (@mod == 0 or @mod == nil)
self.hp += 1
end
self.hp = Integer([self.hp, self.maxhp].min)
end
#--------------------------------------------------------------------------
def sp_reg
i = -1 + id
@mod = $game_map.sp_mod[i]
if not self.stop_reg(1) and not (@mod == 0 or @mod == nil)
self.sp += 1
end
self.sp = Integer([self.sp, self.maxsp].min)
end
#--------------------------------------------------------------------------
end
#==============================================================================
# On Map Regeneration Script v. 1.09
# by Caldaron (01.11.2006)
#==============================================================================
# DESCRIPTIONS
#==============================================================================
#--------------------------------------------------------------------------
# USE_HP/SP_MAPS: true: HP/SP Regeneration außer auf HP/SP_MAPS
# false: HP/SP Regeneration nur auf HP/SP_MAPS
# HP/SP_WEAPONS: Waffen ID ermöglicht HP/SP Regeneration
# HP/SP_ARMORS: Rüstungs ID ermöglicht HP/SP Regeneration
# HP/SP_WAIT: Wartezeit bis Regeneration stattfindet
# sollte maximal erreichbarer HP/SP Wert entsprechen
# HP/SP_REG: Wert um den HP/SP regeneriert wird
# HP/SP_PERCENT: true: HP/SP_REG als Prozentanteil
# HP/SP_STOP: Status ID der Regeneration verhindert
#
# $game_map.
# hp/sp_switch[ID]=: true: Ermöglicht HP/SP Regeneration
# hp/sp_time[ID]=x: Ermöglicht x-malige HP/SP Regeneration
# hp/sp_mod[ID]=x: x%ige HP/SP Regenerationsgeschwindigekeit
# ID = actor.id-1
#--------------------------------------------------------------------------
#==============================================================================
#==============================================================================
module Regenerate
USE_HP_MAPS = false
USE_SP_MAPS = false
HP_MAPS = []
SP_MAPS = []
HP_WEAPONS = []
SP_WEAPONS = []
HP_ARMORS = []
SP_ARMORS = []
HP_WAIT = 9999
SP_WAIT = 9999
HP_REG = 1
SP_REG = 1
HP_PERCENT = false
SP_PERCENT = false
HP_STOP = [1]
SP_STOP = [1]
end
#==============================================================================
class Game_Map
#--------------------------------------------------------------------------
attr_accessor :hp_mod
attr_accessor :sp_mod
attr_accessor :hp_switch
attr_accessor :sp_switch
attr_accessor :hp_time
attr_accessor :sp_time
attr_accessor :hp_wait
attr_accessor :sp_wait
#--------------------------------------------------------------------------
alias map_reg_init initialize
def initialize
@hp_mod = []
@sp_mod = []
@hp_switch = []
@sp_switch = []
@hp_time = []
@sp_time = []
@hp_wait = []
@sp_wait = []
($data_actors.size-1).times do
@hp_mod.push(100)
@hp_switch.push(false)
@hp_wait.push(0)
@hp_time.push(0)
@sp_mod.push(100)
@sp_switch.push(false)
@sp_wait.push(0)
@sp_time.push(0)
end
map_reg_init
end
#--------------------------------------------------------------------------
alias map_reg_update update
def update
for actor in $game_party.actors
i = actor.id
i -= 1
@actor = actor
@hp_wait -= 1
@sp_wait[i] -= 1
if (Regenerate::USE_HP_MAPS and not Regenerate::HP_MAPS.include?(@map_id)) or
Regenerate::HP_WEAPONS.include?(actor.weapon_id) or
Regenerate::HP_ARMORS.include?(actor.armor1_id) or
Regenerate::HP_ARMORS.include?(actor.armor2_id) or
Regenerate::HP_ARMORS.include?(actor.armor3_id) or
Regenerate::HP_ARMORS.include?(actor.armor4_id) or
@hp_switch or @hp_time[i] > 0 or
(Regenerate::USE_HP_MAPS == false and Regenerate::HP_MAPS.include?(@map_id))
if @hp_wait[i] < 1
@hp_time[i] -= 1 if @hp_time[i] > 0
@actor.hp_reg
if Regenerate::HP_PERCENT
@hp_wait[i] = Regenerate::HP_WAIT/(@actor.maxhp * (@actor.maxhp/(Regenerate::HP_REG*100)) * (@hp_mod[i]/100.00))
else
@hp_wait[i] = Regenerate::HP_WAIT/(@actor.maxhp * Regenerate::HP_REG * (@hp_mod[i]/100.00))
end
end
end
if (Regenerate::USE_SP_MAPS and not Regenerate::SP_MAPS.include?(@map_id)) or
Regenerate::SP_WEAPONS.include?(actor.weapon_id) or
Regenerate::SP_ARMORS.include?(actor.armor1_id) or
Regenerate::SP_ARMORS.include?(actor.armor2_id) or
Regenerate::SP_ARMORS.include?(actor.armor3_id) or
Regenerate::SP_ARMORS.include?(actor.armor4_id) or
@sp_switch or @sp_time[i] > 0 or
(Regenerate::USE_SP_MAPS == false and Regenerate::SP_MAPS.include?(@map_id))
if @sp_wait[i] < 1
@sp_time[i] -= 1 if @sp_time[i] > 0
@actor.sp_reg
if @actor.maxsp != 0
if Regenerate::HP_PERCENT
@sp_wait[i] = Regenerate::SP_WAIT/(@actor.maxsp * (@actor.maxsp/(Regenerate::SP_REG*100)) * (@sp_mod[i]/100.00))
else
@sp_wait[i] = Regenerate::SP_WAIT/(@actor.maxsp * Regenerate::SP_REG * (@sp_mod[i]/100.00))
end
end
end
end
end
map_reg_update
end
#--------------------------------------------------------------------------
end
#==============================================================================
class Game_Actor
#--------------------------------------------------------------------------
def stop_reg(type)
case type
when 0
for i in Regenerate::HP_STOP
if self.state?(i)
return true
end
end
when 1
for i in Regenerate::SP_STOP
if self.state?(i)
return true
end
end
end
return false
end
#--------------------------------------------------------------------------
def hp_reg
i = -1 + id
@mod = $game_map.hp_mod[i]
if not self.stop_reg(0) and not (@mod == 0 or @mod == nil)
self.hp += 1
end
self.hp = Integer([self.hp, self.maxhp].min)
end
#--------------------------------------------------------------------------
def sp_reg
i = -1 + id
@mod = $game_map.sp_mod[i]
if not self.stop_reg(1) and not (@mod == 0 or @mod == nil)
self.sp += 1
end
self.sp = Integer([self.sp, self.maxsp].min)
end
#--------------------------------------------------------------------------
end
#==============================================================================
zum Lesen den Text mit der Maus markieren
Einfach anpassen wie weit du es brauchst und viel spaß damit
Also ich bin mir nicht sicher aber setz mal ein [ i ] ein.
Habs aber nicht getested, müsste aber so sein. @hp_wait ist nämlich ein Array, dem muss ein Index mit gegeben werden, vermutlich ist das hier die Variable i
@Zwei: Benutz beim nächsten mal bitte Ruby Tags, im Editor einfach den Rubin anklicken unter der Auswahl 'Linksbündig'
|
|
Ruby Quellcode |
1 |
@hp_wait[i] -= 1 |
Habs aber nicht getested, müsste aber so sein. @hp_wait ist nämlich ein Array, dem muss ein Index mit gegeben werden, vermutlich ist das hier die Variable i
@Zwei: Benutz beim nächsten mal bitte Ruby Tags, im Editor einfach den Rubin anklicken unter der Auswahl 'Linksbündig'
Das große Scientia Wiki zur Spielentwicklung 
Was ist das RGSS ? RGSS-Dokumentation auf Sc
Kyoshiros Makerkurs
Musik von Shabraxxx für euch
Guide zu den Audioformaten
Skripte von mir (Auswahl):
Atmungssystem
| Streichholzsystem
| Animiert durch Bücher blättern
Random : Marktsystem für Kardor
| Staterelated Battlergraphic
| Hinweis auf mögliche Aktionen
SelfSwitchExpirationtimer Skript - Gameplayerweiterung für Pilzesammler und Farmspiele
Meine Skripte werden gerade hier gesammelt.

Was ist das RGSS ? RGSS-Dokumentation auf Sc
Kyoshiros Makerkurs

Musik von Shabraxxx für euch
Guide zu den Audioformaten

Skripte von mir (Auswahl):
Atmungssystem
| Streichholzsystem
| Animiert durch Bücher blättern
Random : Marktsystem für Kardor
| Staterelated Battlergraphic
| Hinweis auf mögliche Aktionen
SelfSwitchExpirationtimer Skript - Gameplayerweiterung für Pilzesammler und Farmspiele
Meine Skripte werden gerade hier gesammelt.Ähnliche Themen
-
Skript-Anfragen »-
#9999999#Meine Scriptsuche!
(14. März 2009, 22:16)
-
Events & Technik »-
Regeneration, Fixieren und noch mehr...
(16. November 2008, 20:03)
-
Kampfsysteme »-
On Map Regeneration Script V1.09
(31. Oktober 2006, 11:14)
-
Skript-Anfragen »-
Statistikscript
(14. September 2007, 18:23)
