[XP] Blizz-ABS

Started by Blizzard, January 09, 2008, 08:21:56 am

Previous topic - Next topic

diablosbud

I forgot to ask Blizzard, how do I post a script, because I have a Gameover Menu that I made, and I would like to post it here.

Blizzard

Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

diablosbud

Sorry I worded it wrong, but the template still will help. I mean where is the topic creator?. Please do tell...

Phasedscar

Alright, I tested the script you gave me and..  it doesn't work.

The error message reads:
"script 'Blizz-ABS 1.98 part 3' line 3763: NoMethod error occurred.
undefined method `draw_text_shaded_later' for #<Bitmap:0x3973b08>"

I have a feeling you're on to something there, but I'm not sure if I'm being clear...

As it is I have the ABS disable itself if I'm too far from an enemy
DISABLE_ABS_MODE = 3

I want to be able to make it so that my characters will have their actor graphic changed when Blizz-ABS detects an enemy nearby.  Or in other words, the ABS system becomes active again.
Spoiler: ShowHide
My own game project & My resource workshop! (respectively)
http://forum.chaos-project.com/index.php?topic=608.0 http://forum.chaos-project.com/index.php?topic=682.0



What that is? Affection area for flails. - Blizz-ABS, the ultimate ABS

The pictures in your signature may altogether be no more than 200kB. The height must not exceed 200 px and the width must not exceed 800 px. Altogether they may take up an area of 160000 px2. Every signature not matching this criteria is a subject of the moderator team to remove and leave this rule as message in your signature.

Blizzard

June 02, 2008, 05:33:22 am #424 Last Edit: June 02, 2008, 05:45:51 am by Blizzard
Quote from: diablosbud on May 31, 2008, 04:25:02 pm
Sorry I worded it wrong, but the template still will help. I mean where is the topic creator?. Please do tell...


In the main topic selection screen (on the top right just above the list of topics) there are a few buttons that are in a box and one of them reads "New topic".

Quote from: Phasedscar on May 31, 2008, 05:37:52 pm
Alright, I tested the script you gave me and..  it doesn't work.

The error message reads:
"script 'Blizz-ABS 1.98 part 3' line 3763: NoMethod error occurred.
undefined method `draw_text_shaded_later' for #<Bitmap:0x3973b08>"

I have a feeling you're on to something there, but I'm not sure if I'm being clear...

As it is I have the ABS disable itself if I'm too far from an enemy
DISABLE_ABS_MODE = 3

I want to be able to make it so that my characters will have their actor graphic changed when Blizz-ABS detects an enemy nearby.  Or in other words, the ABS system becomes active again.


Something's wrong... Blizz-ABS thinks that you are using Tons and doesn't alias draw_text in Bitmap. Or did you just completely remove the shaded text add-on? Either add it back or find in Blizz-ABS the line that says "alias draw_text_shaded_later draw_text" and remove the condition before ("if $tons_version != nil ...") and the "end" after it.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Galatea

Uhmm, excuse me blizz.
How can i make the enemy attack a enemy also.
Basically a battle royale, it will attack me and the surrounding enemies.

Is that possible using the blizz abs?

Blizzard

You can create an enemy and an aggressive critter. Or you can add the status effect confusions to two enemies. In both cases they will attack each other. If you want more than two enemies to attack each other, I suggest the latter.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

diablosbud

Sorry to bother you again with compatibility but this script shouldn't be too incompatibile. It is Shapeshifter by Formar0153. What I need from it is to change your character sprite as it does your battler when changing actors, and for it to update the HUD. I need the HUD to be updated so that it properly levels the HP and SP when changing form. Also could you update the EXP flow, just in case I don't lower or heighten the flow of EXP so it is harder to level as say a 'bear' than in normal form. Please could you complete this compatibility for me, I know I ask a lot, sorry for that :P?

Shapeshifter by Formar0153: ShowHide
#==============================================================================
# Individual Character Development - Shapeshifter by Fomar0153
#==============================================================================
class Game_Actor < Game_Battler
 
  def skill_effect(user, skill)
    super(user, skill)
    if skill.id == 42
      @icd_shape = 21
    end
    if skill.id == 43
      @icd_shape = 1
    end
    hp_check
  end
 
  alias fomar_icd_shapeshifters_setup setup
  def setup(actor_id)
    @icd_shape = 0
    fomar_icd_shapeshifters_setup(actor_id)
  end
 
  def unshift
    @icd_shape = 0
    hp_check
  end
 
  def hp_check
    if @hp > maxhp
      @hp = maxhp
    end
    # I lied it does sp to
    if @sp > maxsp
      @sp = maxsp
    end
  end
 
  def battler_name(first_call = false)
    if first_call == true
      return @battler_name
    end
    if @icd_shape == 0
      return @battler_name
    else
      return $game_actors[@icd_shape].battler_name(true)
    end
  end
 
  def battler_hue(first_call = false)
    if first_call == true
      return @battler_hue
    end
    if @icd_shape == 0
      return @battler_hue
    else
      return $game_actors[@icd_shape].battler_hue(true)
    end
  end
 
  def skills(first_call = false)
    if first_call == true
      return @skills
    end
    if @icd_shape == 0
      return @skills
    else
      return $game_actors[@icd_shape].skills(true)
    end
  end
 
  alias fomar_icd_shapeshifters_skill_can_use? skill_can_use?
  def skill_can_use?(skill_id, first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_skill_can_use?(skill_id)
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_skill_can_use?(skill_id)
    else
      return $game_actors[@icd_shape].skill_can_use?(skill_id, true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_maxhp base_maxhp
  def base_maxhp(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_maxhp
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_maxhp
    else
      return $game_actors[@icd_shape].base_maxhp(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_maxsp base_maxsp
  def base_maxsp(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_maxsp
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_maxsp
    else
      return $game_actors[@icd_shape].base_maxsp(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_str base_str
  def base_str(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_str
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_str
    else
      return $game_actors[@icd_shape].base_str(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_dex base_dex
  def base_dex(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_dex
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_dex
    else
      return $game_actors[@icd_shape].base_dex(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_agi base_agi
  def base_agi(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_agi
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_agi
    else
      return $game_actors[@icd_shape].base_agi(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_int base_int
  def base_int(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_int
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_int
    else
      return $game_actors[@icd_shape].base_int(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_atk base_atk
  def base_atk(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_atk
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_atk
    else
      return $game_actors[@icd_shape].base_atk(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_pdef base_pdef
  def base_pdef(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_pdef
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_pdef
    else
      return $game_actors[@icd_shape].base_pdef(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_mdef base_mdef
  def base_mdef(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_mdef
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_mdef
    else
      return $game_actors[@icd_shape].base_mdef(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_eva base_eva
  def base_eva(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_eva
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_eva
    else
      return $game_actors[@icd_shape].base_eva(true)
    end
  end
 
  alias fomar_icd_shapeshifters_animation1_id animation1_id
  def animation1_id(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_animation1_id
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_animation1_id
    else
      return $game_actors[@icd_shape].animation1_id(true)
    end
  end
 
  alias fomar_icd_shapeshifters_animation2_id animation2_id
  def animation2_id(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_animation2_id
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_animation2_id
    else
      return $game_actors[@icd_shape].animation2_id(true)
    end
  end
 
  alias fomar_icd_shapeshifters_element_rate element_rate
  def element_rate(element_id ,first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_element_rate(element_id)
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_element_rate(element_id)
    else
      return $game_actors[@icd_shape].element_rate(element_id, true)
    end
  end
 
  alias fomar_icd_shapeshifters_state_ranks state_ranks
  def state_ranks(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_state_ranks
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_state_ranks
    else
      return $game_actors[@icd_shape].state_ranks(true)
    end
  end
 
  alias fomar_icd_shapeshifters_state_guard? state_guard?
  def state_guard?(state_id, first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_state_guard?(state_id)
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_state_guard?(state_id)
    else
      return $game_actors[@icd_shape].state_guard?(state_id, true)
    end
  end
 
  alias fomar_icd_shapeshifters_element_set element_set
  def element_set(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_element_set
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_element_set
    else
      return $game_actors[@icd_shape].element_set(true)
    end
  end
 
end

class Scene_Battle
 
  alias fomar_icd_shapeshifters_start_phase5 start_phase5
  def start_phase5
    for actor in $game_party.actors
      actor.unshift
    end
    fomar_icd_shapeshifters_start_phase5
  end
end

Galatea

Ohhhh, how about the critter?
and the latter too. hehe. thx blizz! :)

tSwitch

June 06, 2008, 03:26:31 pm #429 Last Edit: June 06, 2008, 03:36:18 pm by Photi
ok Idk if this was gone over or not, but I'm having an issue here.
Show Picture doesn't work.

Either my event is messing up, or BlizzABS hates show picture, so I'd like to know, does BlizzABS fuck with show picture events?

edit: it works when I use dialogue right as the picture shows up, or if it's in an auto-start event, otherwise it doesnt work.


FCF3a A+ C- D H- M P+ R T W- Z- Sf RLCT a cmn+++ d++ e++ f h+++ iw+++ j+ p sf+
Follow my project: MBlok | Find me on: tSwitch.us | Twitter | Tumblr

Blizzard

I'll fix that in the next release.

Wow, Blizz-ABS 1.99 will have so many bug fixes. xD

@diablosbud: If I got the script right, you only need to replace every occurence of the phrase battle_name and battler_hue to character_name and character_hue and it should work with Blizz-ABS.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

diablosbud

June 07, 2008, 10:06:03 am #431 Last Edit: June 07, 2008, 10:11:27 am by diablosbud
I'll try that, but I am keeping the battler_name and battler_hue because I want the battler to change too. I'll edit this post telling you what happened.

EDIT: It didn't work but I think I am extremely close:
Spoiler: ShowHide
#==============================================================================
# Individual Character Development - Shapeshifter by Fomar0153
#==============================================================================
class Game_Actor < Game_Battler
 
  def skill_effect(user, skill)
    super(user, skill)
    if skill.id == 42
      @icd_shape = 21
    end
    if skill.id == 43
      @icd_shape = 1
    end
    hp_check
  end
 
  alias fomar_icd_shapeshifters_setup setup
  def setup(actor_id)
    @icd_shape = 0
    fomar_icd_shapeshifters_setup(actor_id)
  end
 
  def unshift
    @icd_shape = 0
    hp_check
  end
 
  def hp_check
    if @hp > maxhp
      @hp = maxhp
    end
    # I lied it does sp to
    if @sp > maxsp
      @sp = maxsp
    end
  end
 
  def battler_name(first_call = false)
    if first_call == true
      return @battler_name
    end
    if @icd_shape == 0
      return @battler_name
    else
      return $game_actors[@icd_shape].battler_name(true)
    end
  end
 
  def battler_hue(first_call = false)
    if first_call == true
      return @battler_hue
    end
    if @icd_shape == 0
      return @battler_hue
    else
      return $game_actors[@icd_shape].battler_hue(true)
    end
  end
 
  def character_name(first_call = false)
    if first_call == true
      return @character_name
    end
    if @icd_shape == 0
      return @character_name
    else
      return $game_actors[@icd_shape].character_name(true)
    end
  end

    def character_hue(first_call = false)
    if first_call == true
      return @character_hue
    end
    if @icd_shape == 0
      return @character_hue
    else
      return $game_actors[@icd_shape].character_hue(true)
    end
  end

  def skills(first_call = false)
    if first_call == true
      return @skills
    end
    if @icd_shape == 0
      return @skills
    else
      return $game_actors[@icd_shape].skills(true)
    end
  end
 
  alias fomar_icd_shapeshifters_skill_can_use? skill_can_use?
  def skill_can_use?(skill_id, first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_skill_can_use?(skill_id)
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_skill_can_use?(skill_id)
    else
      return $game_actors[@icd_shape].skill_can_use?(skill_id, true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_maxhp base_maxhp
  def base_maxhp(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_maxhp
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_maxhp
    else
      return $game_actors[@icd_shape].base_maxhp(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_maxsp base_maxsp
  def base_maxsp(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_maxsp
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_maxsp
    else
      return $game_actors[@icd_shape].base_maxsp(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_str base_str
  def base_str(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_str
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_str
    else
      return $game_actors[@icd_shape].base_str(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_dex base_dex
  def base_dex(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_dex
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_dex
    else
      return $game_actors[@icd_shape].base_dex(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_agi base_agi
  def base_agi(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_agi
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_agi
    else
      return $game_actors[@icd_shape].base_agi(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_int base_int
  def base_int(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_int
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_int
    else
      return $game_actors[@icd_shape].base_int(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_atk base_atk
  def base_atk(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_atk
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_atk
    else
      return $game_actors[@icd_shape].base_atk(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_pdef base_pdef
  def base_pdef(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_pdef
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_pdef
    else
      return $game_actors[@icd_shape].base_pdef(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_mdef base_mdef
  def base_mdef(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_mdef
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_mdef
    else
      return $game_actors[@icd_shape].base_mdef(true)
    end
  end
 
  alias fomar_icd_shapeshifters_base_eva base_eva
  def base_eva(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_base_eva
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_base_eva
    else
      return $game_actors[@icd_shape].base_eva(true)
    end
  end
 
  alias fomar_icd_shapeshifters_animation1_id animation1_id
  def animation1_id(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_animation1_id
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_animation1_id
    else
      return $game_actors[@icd_shape].animation1_id(true)
    end
  end
 
  alias fomar_icd_shapeshifters_animation2_id animation2_id
  def animation2_id(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_animation2_id
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_animation2_id
    else
      return $game_actors[@icd_shape].animation2_id(true)
    end
  end
 
  alias fomar_icd_shapeshifters_element_rate element_rate
  def element_rate(element_id ,first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_element_rate(element_id)
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_element_rate(element_id)
    else
      return $game_actors[@icd_shape].element_rate(element_id, true)
    end
  end
 
  alias fomar_icd_shapeshifters_state_ranks state_ranks
  def state_ranks(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_state_ranks
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_state_ranks
    else
      return $game_actors[@icd_shape].state_ranks(true)
    end
  end
 
  alias fomar_icd_shapeshifters_state_guard? state_guard?
  def state_guard?(state_id, first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_state_guard?(state_id)
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_state_guard?(state_id)
    else
      return $game_actors[@icd_shape].state_guard?(state_id, true)
    end
  end
 
  alias fomar_icd_shapeshifters_element_set element_set
  def element_set(first_call = false)
    if first_call == true
      return fomar_icd_shapeshifters_element_set
    end
    if @icd_shape == 0
      return fomar_icd_shapeshifters_element_set
    else
      return $game_actors[@icd_shape].element_set(true)
    end
  end
 
end

class Scene_Battle
 
  alias fomar_icd_shapeshifters_start_phase5 start_phase5
  def start_phase5
    for actor in $game_party.actors
      actor.unshift
    end
    fomar_icd_shapeshifters_start_phase5
  end
end


EDIT2: I already copy and pasted the parts regarding them, but for some odd reason it doesn't work

Blizzard

You could copy paste the parts regarding character_name and character_hue and edit those instead. xD
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

tSwitch

Quote from: Blizzard on June 07, 2008, 05:33:23 am
I'll fix that in the next release.

Wow, Blizz-ABS 1.99 will have so many bug fixes. xD

@diablosbud: If I got the script right, you only need to replace every occurence of the phrase battle_name and battler_hue to character_name and character_hue and it should work with Blizz-ABS.


any idea as to when that's coming out? as I can't really continue with my game's system until I can get this working.


FCF3a A+ C- D H- M P+ R T W- Z- Sf RLCT a cmn+++ d++ e++ f h+++ iw+++ j+ p sf+
Follow my project: MBlok | Find me on: tSwitch.us | Twitter | Tumblr

Blizzard

I finished my diploma thesis and in 3 weeks I'm done with this semester. The last two weeks are exams. In other words: It's very likely to happen during those two weeks. xD

If you need it VERY BADLY, I can figure out where the problem is and provide you with a hotfix for the time being.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

diablosbud

I already tried what you said, but I am still stuck. Could you please look at the code, and help me get this. I am so close I can feel it. Please help.

Blizzard

June 08, 2008, 11:14:29 am #436 Last Edit: June 08, 2008, 11:18:52 am by Blizzard
Use the original script with this extra code. Put it BELOW both scripts, Blizz-ABS and the Shapeshifter script.

class Game_Battler
 
  alias skill_effect_shapeshifter_later  skill_effect
  def skill_effect(user, skill)
    if self.is_a?(Game_Actor)
      current = @icd_shape
      result = skill_effect_shapeshifter_later(user, skill)
      $game_temp.hud_refresh = true if (current != @icd_shape)
    else
      result = skill_effect_shapeshifter_later(user, skill)
    end
    return result
  end
 
end
 
class Game_Actor < Game_Battler
 
  attr_reader :icd_shape
 
  def get_exp_rate
    rate = case @icd_shape
    when 0 then 100
    # START CONFIG
    # template: when ICD_SHAPE_ID then return PERCENTAGE_OF_EXP_GAIN
    #when 1 then 120
    #when 2 then 80
    # END CONFIG
    else
      100
    end
    return rate
  end
 
  def character_name(first_call = false)
    if first_call == true
      return @character_name
    end
    if @icd_shape == 0
      return @character_name
    else
      return $game_actors[@icd_shape].character_name(true)
    end
  end
 
  def character_hue(first_call = false)
    if first_call == true
      return @character_hue
    end
    if @icd_shape == 0
      return @character_hue
    else
      return $game_actors[@icd_shape].character_hue(true)
    end
  end
 
end

class Game_System
 
  def remove_enemy(enemy)
    unless enemy.execute || enemy.erased
      items = []
      if $tons_version != nil && $tons_version >= 5.98 &&
          TONS_OF_ADDONS::MULTI_DROP
        BlizzCFG.drop_configuration(enemy.battler_id).each {|i|
            if rand(100) < i[2]
              case i[0]
              when 1 then items.push($data_items[i[1]])
              when 2 then items.push($data_weapons[i[1]])
              when 3 then items.push($data_armors[i[1]])
              end
            end}
      elsif rand(100) < enemy.battler.treasure_prob
        if enemy.battler.item_id > 0
          items.push($data_items[enemy.battler.item_id])
        elsif enemy.battler.weapon_id > 0
          items.push($data_weapons[enemy.battler.weapon_id])
        elsif enemy.battler.armor_id > 0
          items.push($data_armors[enemy.battler.armor_id])
        end
      end
      enemy.start if enemy.list != nil
      $game_map.events.delete(enemy.id) unless enemy.execute
      items.each {|i| Drop_Event.new(i, enemy.x, enemy.y)}
      $game_party.actors.each {|actor|
          unless actor.cant_get_exp?
            actor.exp += enemy.exp * actor.get_exp_rate / 100
          end}
      if enemy.gold != 0
        if BlizzABS::Config::DROP_GOLD != ''
          Drop_Event.new(enemy.gold, enemy.x, enemy.y)
        else
          $game_party.gain_gold(enemy.gold)
        end
      end
    end
  end
 
end


I haven't tested it, but I don't see any reason why it shouldn't work. This is what it will do:


  • allow change of character sprites
  • update HUD upon transformation
  • allow different EXP rates when in another form (see that CONFIG part on top and set it up correctly for that)


Is that all you need?

EDIT: I just noticed, this looks a lot like my Chaos Drive System where you can transform as well. xD I will make a compatibility plugin for Blizz-ABS when I have the time which will be soon.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

tSwitch

Quote from: Blizzard on June 08, 2008, 09:31:18 am
I finished my diploma thesis and in 3 weeks I'm done with this semester. The last two weeks are exams. In other words: It's very likely to happen during those two weeks. xD

If you need it VERY BADLY, I can figure out where the problem is and provide you with a hotfix for the time being.


k, I can wait, not planning on releasing a public demo for a few weeks anyway.
It's a matter of damage display so if a hotfix is simple and possible that'd be great.  Not gna pressure you tho


FCF3a A+ C- D H- M P+ R T W- Z- Sf RLCT a cmn+++ d++ e++ f h+++ iw+++ j+ p sf+
Follow my project: MBlok | Find me on: tSwitch.us | Twitter | Tumblr

diablosbud

I think I have to have shapeshifter above Blizz-ABS also, because if I don't nothing happens with the new script, and if I do it causes an error. Here is my error, which occurs on transformation (the HUD I thought needed to be updated because only on Scene change, and then switch back to map would update the "Max" HP, but still lower my SP): "Script 'Shapeshifter' line 113: ArgumentError occurred. wrong number of arguments(1 for 0)". Could you please help fix this?

Juan

You might want to post the script source. And post the line where the error is amd a few ;ines above or/and below it.
Dropbox Who need luck when you can make your own.
3ds Friend code: ShowHide
 4468 1422  6617