LOGIN
SEARCH
PROFILE
keys: ↑ ↓
LOGOUT
INDEX
MEMBERS
keys: ↑ ↓
HOME
PORTAL
PLAY ALONG
PLAY with WORDS
PLAY with GRAPHICS
PLAY with SOUNDS
PLAY with CODES
PLAY with PROJECTS
keys: ← →
Guest Access
Register:
Members:



View previous topic View next topic Go down Message [Page 1 of 1]

ACTIVATED
ACTIVATED
#1 default Paper Mario walk
Loading

shogun3

avatar
ACTIVATED
ACTIVATED
ACTIVATED
profile
This is a script originally made for rpgmakervx by BulleXt.

I deleted the last portion of it to make it compatible with xp.

Instructions are on the script

Code:


=begin
                            Paper Mario Walk
Version = 0.2
Author = BulletXt (bulletxt@gmail.com)

Description:
This script will make you move up/down keeping direction animation fixed
to lef/right like in sideview arcade games.

=end

#this is a switch ID, if ON it restores normal VX walking. By default this
#switch is OFF.
DISABLE_SCRIPT = 1

#this is the initial position player faces when game starts.
#possible values are: "left"  or  "right"
STARTING_POSITION_DIRECTION = "right"


########################## END CONFIGURATION ###################################



if STARTING_POSITION_DIRECTION == "right"
POSITION = 4 
else
POSITION = 6   
end



class Game_Character

  alias bulletxt_move_down_paper move_down
  def move_down(turn_ok = true)
  current_direction = @direction
  bulletxt_move_down_paper(turn_ok = true) 
  return if $game_switches[DISABLE_SCRIPT]
  turn_right if current_direction == 6
  turn_left if current_direction == 4
  end
 
 
 
  alias bulletxt_move_up_paper move_up
  def move_up(turn_ok = true)
  current_direction = @direction
  bulletxt_move_up_paper(turn_ok = true)
  return if $game_switches[DISABLE_SCRIPT]
  turn_right if current_direction == 6
  turn_left if current_direction == 4
  end

end
ACTIVATED
Show Signature
ACTIVATED
Administrator
Administrator
#2 default Re: Paper Mario walk
Loading

G@MeF@Ce

G@MeF@Ce
Administrator
Administrator
Administrator
profile
I've been secretly working on a platform script to seamlessly work with XAS.

this Paper Mario walk script looks very nice and simple,
I will have to test this out with XAS and see how it goes...
thanks for sharing! ^,^
Administrator
Show Signature
Administrator
https://www.dropbox.com/sh/i47rig99qhrvn8s/4m5HvsM2fD http://g4m3f4c3.deviantart.com https://www.facebook.com//pages/Gameface101/332331300127008 https://twitter.com//mr_gameface101 https://soundcloud.com/schurr https://www.youtube.com/user/MrGameface101?feature=watch
ACTIVATED
ACTIVATED
#3 default Re: Paper Mario walk
Loading

shogun3

avatar
ACTIVATED
ACTIVATED
ACTIVATED
profile
it would be great to have a platform script (better than the one i'm using) to work with xas! Hope you can do it.


The paper mario script works well when the characters move, but if you want them to attack only left/right you have to change something (I think) here:

Code:

module XRXS_BattlerAttachment
  def attack_effect(attacker)
  @actor = $game_party.actors[0]
  if @actor == nil
  return false 
  end
    return super if self.battler.nil? or attacker.nil?
    result = (not self.battler.dead? and self.battler.hiblink_duration.to_i <= 0)
    if self.battler.hit_it.to_i > 0
      return false
    end
    if attacker.battler.no_damage == true
      return false
    end   
    if attacker.collapse_done == true
      return false
    end         
    if attacker.jumping?
      return false
    end 
    if self.battler.is_a?(Game_Actor) and self.action != nil and
    self.action.self_invicible == true and not
    XAS_BA_ENEMY::IGNORE_HERO_SHIELD.include?(attacker.battler.id)
    return false
    end
    if self.battler.is_a?(Game_Actor) and self.action != nil and
      self.moving? and
      ((self.direction == 4 and attacker.direction == 6) or
        (self.direction == 6 and attacker.direction == 4))and not
      XAS_BA_ENEMY::IGNORE_HERO_SHIELD.include?(attacker.battler.id) and
      self.action.id != $game_system.xas_action_shield_id   
      return false
    end 
    if self.battler.is_a?(Game_Actor) and $game_temp.dodge_time_real > 0 and not
      XAS_BA_ENEMY::IGNORE_HERO_SHIELD.include?(attacker.battler.id)
      $game_player.battler.damage = XAS::DODGE_TEXT
      $game_player.battler.damage_pop = true     
      self.battler.hit_it = 13
      return false
    end     
    if result     
      if XAS_ABS_SETUP::DEFENSE_SYSTEM_ACTIVE == true and
      self.battler.is_a?(Game_Actor) and self.action != nil and
      self.action.id == $game_system.xas_action_shield_id and
      XAS_BA_ENEMY::IGNORE_HERO_SHIELD.include?(attacker.battler.id)
      $game_temp.misc_text_time = 25
      $game_temp.misc_text_pop = true     
      $game_temp.misc_text = XAS_ABS_SETUP::GUARD_BREAK_TEXT
      $game_screen.start_shake(10,15,10)
      $game_system.se_play(XAS_ABS_SETUP::GUARD_BREAK_SE)         
      end
if self.battler.is_a?(Game_Actor) and self.action != nil and
      self.action.id == $game_system.xas_action_shield_id and not
        XAS_BA_ENEMY::IGNORE_HERO_SHIELD.include?(attacker.battler.id) and
        $game_system.move_meter >= XAS::DASH_ACTIVE_PERC and
        XAS_ABS_SETUP::DEFENSE_SYSTEM_ACTIVE == true   
        $game_temp.meter_blink = 5
        if ((self.direction == 4 and attacker.direction == 4) or
          (self.direction == 6 and attacker.direction == 6))
            $game_temp.defense_per = XAS_ABS_SETUP::BACK_DEFENSE_PERC
        else 
            $game_temp.defense_per = XAS_ABS_SETUP::SIDE_DEFENSE_PERC
        end 
        if $game_temp.defense_per > 0 and not
      ((self.direction == 4 and attacker.direction == 6) or
        (self.direction == 6 and attacker.direction == 4))
        $game_temp.misc_text_time = 25
        $game_temp.misc_text_pop = true
        $game_temp.misc_text = XAS_ABS_SETUP::DEFENSE_TEXT
        end
end           
    if self.battler.is_a?(Game_Actor) and self.action != nil and
        self.action.id == $game_system.xas_action_shield_id  and not
        XAS_BA_ENEMY::IGNORE_HERO_SHIELD.include?(attacker.battler.id)
        if $game_system.move_meter >= XAS::DASH_ACTIVE_PERC and
      ((self.direction == 4 and attacker.direction == 6) or
        (self.direction == 6 and attacker.direction == 4))

        $game_temp.meter_blink = 5
        $game_player.battler.damage = "Guardia"
        $game_player.battler.damage_pop = true
        $game_system.se_play(XAS_ABS_SETUP::SHIELD_SE)
        unless XAS_BA_ENEMY::KNOCK_BACK_DISABLES.include?(attacker.battler.id)
        attacker.blow(self.direction, 2)
        attacker.jump(0,0)
        end
        if XAS_ABS_SETUP::DEFENSE_COST_TYPE == 1 and
          XAS_ABS_SETUP::DEFENSE_SYSTEM_ACTIVE == true and
          $game_switches[XAS::CT_DISABLE_SWITCH] == false
        damage_ct = 10 + rand(10) 
        $game_system.move_meter -= damage_ct
        end
        self.battler.hit_it = 10
        return false 
        else 
        if $game_system.move_meter < XAS::DASH_ACTIVE_PERC and
            XAS_ABS_SETUP::DEFENSE_SYSTEM_ACTIVE == true and
            $game_switches[XAS::CT_DISABLE_SWITCH] == false
        $game_temp.misc_text_time = 20
        $game_temp.misc_text_pop = true
        $game_temp.misc_text = XAS_ABS_SETUP::GUARD_BREAK_TEXT
        $game_screen.start_shake(10,15,10)
        $game_system.se_play(XAS_ABS_SETUP::GUARD_BREAK_SE) 
        self.blow(attacker.direction, 1)
        $game_temp.shield_active = false
        end       
      end
      end       
      self.battler.hit_it = XAS_BA::INVICIBLE_DURATION_HERO + 5
      $game_temp.in_battle = true
      self.battler.attack_effect(attacker.battler)
      self.battler.damage_pop = true
    if self.battler.damage != "Miss" #or
      #  self.battler.damage.to_i != 0     
      self.animation_id = attacker.battler.animation2_id
    #  $game_player.animation_id = self.battler.animation_id
      unless self.battler.states.include?(XAS::INVINCIBLE_ID) or
        self.battler.damage.to_i == 0
        attack_blow_pw = XAS_BA_ENEMY::ATTACK_BLOW_POWER[attacker.battler.id]
        if attack_blow_pw != nil
        self.blow(attacker.direction, attack_blow_pw)
        else
        self.blow(attacker.direction, 1)
        end
      end
      end
      $game_temp.in_battle = false
      if self.action != nil and self.is_a?(Game_Player) and not
          (self.battler.xas_states_sleep == true or
          self.battler.xas_states_stop == true)     
      else
      if self.battler.damage.to_i > 0
          if attacker.battler.xas_states_drain == true
            drain_state_damage = self.battler.damage.to_i * XAS::DRAIN_RECOVER_PERC / 100
            if drain_state_damage > 0
            attacker.battler.damage = -drain_state_damage
            attacker.battler.damage_pop = true       
            attacker.battler.hp += drain_state_damage
            else
            attacker.battler.damage = -1
            attacker.battler.damage_pop = true       
            attacker.battler.hp += 1           
            end
            if attacker.battler.is_a?(Game_Enemy) and
              $mog_rgss_xas_enemy_hp != nil
              $xas_enemy_old_hp = 0
              $xas_enemy_name = $data_enemies[attacker.battler.id].name
              $game_temp.xas_info_ref = 40 * MOG::ENEMY_INFO_FADE_TIME
              $xas_enemy_hp = attacker.battler.hp
              $xas_enemy_maxhp = attacker.battler.maxhp
              $xas_info_ref = true             
            end           
        end         
        attack_blow_pw = XAS_BA_ENEMY::ATTACK_BLOW_POWER[attacker.battler.id]
        if attack_blow_pw != nil
        self.blow(attacker.direction, attack_blow_pw)
        else
        self.blow(attacker.direction, 1)
     
      end
      end     
      end
      self.battler.hiblink_duration = self.damage_hiblink_duration
      if self.is_a?(Game_Player)
        self.need_refresh = true
      end
    end
    @xrxs64c_defeat_done = false if @xrxs64c_defeat_done == nil
    if not @xrxs64c_defeat_done and self.battler.dead?
      defeat_process
      @xrxs64c_defeat_done = true
    end
  end
 
 
  def action_effect(bullet, action_id)
    return super if self.battler.nil?
    if self.battler.hiblink_duration.to_i > 0 and
      not bullet.action.ignore_invincible
      return false
    end
    if self.battler.hit_it.to_i > 0
      return false
    end
    if self.battler.no_damage == true
      return false
    end
    if self.collapse_done == true
      return false
    end
    if action_id == $game_system.xas_action_shield_id
      return false
    end
    skill_id = action_id
    return if skill_id == nil
    user = bullet.action.user
    attacker = (user == nil ? nil : user.battler)
    ally = Database_Bullet::ONLY_ALLY[action_id]
    self_dam = Database_Bullet::SELF_DAMAGES[self.id]
    if self.battler.is_a?(Game_Enemy) and user.battler.is_a?(Game_Enemy)
      if ally == false
        return false
      end
    end   
    if self.action != nil and bullet.action.self_invicible == true and
    bullet.action.ignore_playershield == false and not
    ((self.battler.is_a?(Game_Enemy) and user.battler.is_a?(Game_Enemy)) or
    (self.battler.is_a?(Game_Actor) and user.battler.is_a?(Game_Actor)))
    return false
    end
    if self.battler.is_a?(Game_Enemy) and XAS_BA_ENEMY::ENEMY_OBJECT.include?(self.enemy_id)
      return
    end
    if self.battler.is_a?(Game_Actor) and $game_temp.dodge_time_real > 0 and
      bullet.action.ignore_playershield == false
      $game_player.battler.damage = XAS::DODGE_TEXT
      $game_player.battler.damage_pop = true     
      self.battler.hit_it = 10
      return false
    end     
    result = (user != nil and not self.battler.dead?)
    skill_id = action_id
    dirset    = [1,2,3,4,6,7,8,9]
    dir_index = (dirset.index(bullet.direction) + 2) % 4
    dir_index3 = (dirset.index(bullet.direction)) % 4
    shield    = self.shield_actions.include?(action_id)
    for direction in self.shield_directions
      if self.shield_directions.include?(2) and
        ((self.direction == 6 and bullet.direction == 4) or
        (self.direction == 4 and bullet.direction == 6))
          shield = 2
    elsif self.shield_directions.include?(8) and
        ((self.direction == 6 and bullet.direction == 6) or
        (self.direction == 4 and bullet.direction == 4))
          shield = 8   
    elsif self.shield_directions.include?(4) and
        ((self.direction == 2 and bullet.direction == 4) or
        (self.direction == 8 and bullet.direction == 6) or
        (self.direction == 6 and bullet.direction == 2) or
        (self.direction == 4 and bullet.direction == 8))
          shield = 4           
    elsif self.shield_directions.include?(6) and
        ((self.direction == 2 and bullet.direction == 6) or
        (self.direction == 8 and bullet.direction == 4) or
        (self.direction == 6 and bullet.direction == 8) or
        (self.direction == 4 and bullet.direction == 2))
          shield = 6 
      end       
    end
if (self.battler.is_a?(Game_Actor) and user.battler.is_a?(Game_Actor)) and
    (XAS_SKILL::RANG_EFFECT.include?(skill_id) or
    XAS_SKILL::HOOK_SHOT_EFFECT.include?(skill_id))
    bullet.action.duration = 1 
    return
  end
 
 
      if XAS_ABS_SETUP::DEFENSE_SYSTEM_ACTIVE == true and
      self.battler.is_a?(Game_Actor) and self.action != nil and
      self.action.id == $game_system.xas_action_shield_id and
      bullet.action.ignore_playershield == true
      $game_temp.misc_text_time = 25
      $game_temp.misc_text_pop = true     
      $game_temp.misc_text = XAS_ABS_SETUP::GUARD_BREAK_TEXT
      $game_screen.start_shake(10,15,10)
      $game_system.se_play(XAS_ABS_SETUP::GUARD_BREAK_SE) 
      end 
if self.battler.is_a?(Game_Actor) and self.action != nil and
      self.action.id == $game_system.xas_action_shield_id and
        bullet.action.ignore_playershield == false and
        $game_system.move_meter > XAS::DASH_ACTIVE_PERC and
        XAS_ABS_SETUP::DEFENSE_SYSTEM_ACTIVE == true   
        $game_temp.meter_blink = 5
       
       
        if ((self.direction == 4 and bullet.direction == 4) or
          (self.direction == 6 and bullet.direction == 6))           
          $game_temp.defense_per = XAS_ABS_SETUP::BACK_DEFENSE_PERC
        else 
            $game_temp.defense_per = XAS_ABS_SETUP::SIDE_DEFENSE_PERC
        end 
        if $game_temp.defense_per > 0  and not       
      ((self.direction == 4 and bullet.direction == 6) or
        (self.direction == 6 and bullet.direction == 4))
        $game_temp.misc_text_time = 25
        $game_temp.misc_text_pop = true
        $game_temp.misc_text = XAS_ABS_SETUP::DEFENSE_TEXT       
        end         
end     
     
if self.battler.is_a?(Game_Actor) and self.action != nil and
      self.action.id == $game_system.xas_action_shield_id and
        bullet.action.ignore_playershield == false
        if $game_system.move_meter > XAS::DASH_ACTIVE_PERC and         
      ((self.direction == 4 and bullet.direction == 6) or
        (self.direction == 6 and bullet.direction == 4))
        if bullet.action.multi_hit == true
        self.battler.hit_it = 10
        else
        bullet.action.duration = 1
        end
        $game_player.battler.damage = XAS_ABS_SETUP::SHIELD_TEXT
        $game_player.battler.damage_pop = true
        $game_system.se_play(XAS_ABS_SETUP::SHIELD_SE) 
        if XAS_ABS_SETUP::DEFENSE_COST_TYPE == 1 and
            XAS_ABS_SETUP::DEFENSE_SYSTEM_ACTIVE == true and
            $game_switches[XAS::CT_DISABLE_SWITCH] == false
            skill = $data_skills[skill_id]
            $game_system.move_meter -= skill.sp_cost
        end       

I'm not a scripter, but as you can see I tried to play with the script to see if I can do that, and it kinda worked.
The only thing is that I would like the enemies to attack me (in case of close attacks) only when player x=enemy x.
ACTIVATED
Show Signature
ACTIVATED
C.O.R.N.
C.O.R.N.
#4 default Re: Paper Mario walk
Loading

BluE

BluE
C.O.R.N.
C.O.R.N.
C.O.R.N.
profile
yeah! A platform script! YAY!
C.O.R.N.
Show Signature


Want a real challenge? Try [You must be registered and logged in to see this link.]

If you read this message, please PM me. this is a test. And I'm serious, this isnt just some lousy time wasting paragraph that I wrote just to fill in my signature. It's here for a reason. PM ME.
C.O.R.N.
http://51s-seedy-masteroogway.blogspot.com
EVENTALIST
EVENTALIST
#5 default Re: Paper Mario walk
Loading

mr_wiggles

mr_wiggles
EVENTALIST
 EVENTALIST
EVENTALIST
profile
Yes that would be neat for a plat former script.


So this script will make the player look like they turned like paper mario does? - cool.
EVENTALIST
Show Signature
EVENTALIST

Sponsored content

profile

View previous topic View next topic Back to top Message [Page 1 of 1]

 

Chatbox system disabled
Personal messaging disabled