Per 2016, RMID pindah ke RMID Discord (Invite link dihapus untuk mencegah spambot -Theo @ 2019). Posting sudah tidak bisa dilakukan lagi.
Mohon maaf atas ketidaknyamanannya dan mohon kerjasamanya.

Share | 
 

 Deviant Skill Icon - Tankentai only

Topik sebelumnya Topik selanjutnya Go down 
Deviant Skill Icon - Tankentai only Empty2011-06-11, 14:15
PostDeviant Skill Icon - Tankentai only
#1
richter_h 
Salto Master
Hancip RMID
richter_h

Kosong
Posts : 1705
Thanked : 30
Engine : Other
Skill : Skilled
Type : Developer
Awards:

Deviant Skill Icon - Tankentai only Vide
Deviant Skill Icon
Versi: 1.0
Tipe: Battle System Add-On


Pengenalan
Pertamanya ane mo bikin skill si Tinker (Courage, siapa lagi?) biar pake senjata lain walo dia misalnya lagi nenteng pedang... Dan sekarang malah jadi skrip :hammer:

inget, ni skrip cuman bisa dipake barengan Tankentai SBS :D
pasti ngga bisa dipake sama CMS lain macem Melody apalagi DBS :kabur:



Fitur


  • ganti icon senjata yang dipake pas casting skill (mo nembakin Silver Bullet walo ente Warrior dan lagi pake pedang?)
  • ganti icon item pas pake item (misanya di LoSS tu Magic Hammer; getok teman pake palu buat ilangin status Petrify :hammer:)
  • kalo males bikin 'flying graphics,' skrip ini juga bisa bantu ente buat pake senjata yang sedang dipake biar jadi bahan lemparan (kalo di LoSS tu Sword Boomerang; ngga perlu motong2in gambar dari iconset lagi loh :hihi: )



Screenshots

ntar... tapi coba dulu aja :D


Demo

ntar... tapi coba dulu aja :D


Scripts
Code:
#------------------------------------------------------------------------------
# Deviant Skill Icon
# version 1.0
# by richter_h
#------------------------------------------------------------------------------
# This script will make the skill uses the designated icon rather than
# use the same with weapons. This script was used for my game project which
# has to use another icon to cast a skill
# (such as Laser, Burstfire, EMP Fusion, etc... I use the cannon icon rather
# than the default explosion icon :D )
#
# For Tankentai use only, and recommended the latest one if want to use this.
# Won't work with other BS such as Melody and good ol' DBS... :P
#
# Feel free to credit if used ;)
#------------------------------------------------------------------------------

module DSI
  # Insert skill ID here to designate the skill to use the weapon icon rather
  # than the designated for skill itself or flying grapihcs
  WEAPON_WITH_SKILL = [48]
 
  # If you want to use another icon as weapon graphic or flying graphic (such
  # as using ray cannon to cast Laser or throw grenade icon rather than
  # the explosion icon), insert as following in the bracket below
  #
  # [skill id in database] => [icon index in iconset.png],
  #
  # Don't forget to add comma after the icon index.
  DEVIANT_SKILL = {
    20 => 35,
    22 => 35,
    23 => 35,
    24 => 35,
    31 => 16
  }
 
  # Same drill, as skill above but this one below is for items if you have
  # a smoke bomb to throw and wants to use antoher icon than designated icon
  # in database, as example.
  #
  # [item id in database] => [icon index in iconset.png],
  #
  # Don't forget to add comma after the icon index.
  DEVIANT_ITEM = {
    7 => 41
  }
end

class Sprite_Weapon < Sprite_Base
  #--------------------------------------------------------------------------
  # ● 武器を取得
  #-------------------------------------------------------------------------- 
  def weapon_graphics(left = false)
    if @battler.actor?
      weapon = @battler.weapons[0] unless left
      weapon = @battler.weapons[1] if left
    else
      weapon = $data_weapons[@battler.weapon]
    end
    # 武器がなければ処理をキャンセル
    return if weapon == nil
   
    deviconskill = DSI::DEVIANT_SKILL
    deviconitem = DSI::DEVIANT_ITEM
    if weapon.graphic == "" && deviconskill.include?(@battler.action.skill_id) # @battler.action.skill_id ==
      icon_index = deviconskill[@battler.action.skill_id] #35
      self.bitmap = Cache.system("Iconset")
      self.src_rect.set(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
      @weapon_width = @weapon_height = 24
    elsif weapon.graphic == "" && deviconitem.include?(@battler.action.item.id) # @battler.action.skill_id ==
      icon_index = deviconitem[@battler.action.item.id] #35
      self.bitmap = Cache.system("Iconset")
      self.src_rect.set(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
      @weapon_width = @weapon_height = 24
   
    # アイコンを利用するなら
    elsif weapon.graphic == ""
      icon_index = weapon.icon_index
      self.bitmap = Cache.system("Iconset")
      self.src_rect.set(icon_index % 16 * 24, icon_index / 16 * 24, 24, 24)
      @weapon_width = @weapon_height = 24
    # ID指定があったら、アイコンではなくそのグラフィックを取得
    else
      self.bitmap = Cache.character(weapon.graphic)
      @weapon_width = self.bitmap.width
      @weapon_height = self.bitmap.height
    end
  end
end

class Sprite_Battler < Sprite_Base
  #--------------------------------------------------------------------------
  # ++ Moving Animations
  #--------------------------------------------------------------------------
  def moving_anime
    # まだ前のアニメ飛ばしが残っているなら初期化
    # If the previous animation exists, initialize actions
    @move_anime.action_reset if @anime_moving
    @anime_moving = true
    # Mirror when in a surprise encounter
    mirror = false
    mirror = true if $back_attack
    # Animation ID
    id = @active_action[1]
    # Object/Target
    target = @active_action[2]
    x = y = mem = 0
    # If object is a single unit
    if target == 0
      # ターゲットが決まってない場合、自身に変換
      # If target is not decided, change target to self
      if @target_battler == nil
        x = self.x
        y = self.y
      else
        # ターゲットが空の場合、自身に変換
        # If target is nil, change target to self
        if @target_battler[0] == nil
          x = self.x
          y = self.y
        else
          # 最初に入っているターゲットに対象決定
          # If target is confirmed, get position
          x = @target_battler[0].position_x
          y = @target_battler[0].position_y
        end 
      end 
    # 対象が敵の中心の場合 
    # When the object/targets is a group of enemies
    elsif target == 1
      # 自身がアクターの場合はエネミーの中心を計算
      # Calculate the center position of the party
      if @battler.is_a?(Game_Actor)
        for target in $game_troop.members
          x += target.position_x
          y += target.position_y
          mem += 1
        end
        x = x / mem
        y = y / mem
      # 自身がエネミーの場合はアクターの中心を計算
      # Calculate the center position of the enemy targets
      else
        for target in $game_party.members
          x += target.position_x
          y += target.position_y
          mem += 1
        end
        x = x / mem
        y = y / mem
      end
    # 対象が味方の中心の場合 
    # When the object/targets are a group of actors
    elsif target == 2
      # 自身がアクターの場合はアクターの中心を計算
      # Calculate center of actor party
      if @battler.is_a?(Game_Actor)
        for target in $game_party.members
          x += target.position_x
          y += target.position_y
          mem += 1
        end
        x = x / mem
        y = y / mem
      # 自身がエネミーの場合はエネミーの中心を計算
      # Calculate cetner of enemy troop
      else
        for target in $game_troop.members
          x += target.position_x
          y += target.position_y
          mem += 1
        end
        x = x / mem
        y = y / mem
      end
    # Object is self
    else
      x = self.x
      y = self.y
    end 
    # 開始位置の微調整
    # Adjust position of animation
    plus_x = @active_action[6]
    plus_y = @active_action[7]
    # エネミーはX軸を逆に
    # x-axis is reversed for enemies
    plus_x *= -1 if @battler.is_a?(Game_Enemy)
    # 最終的な移動距離を算出
    # Calculate distance from source to target
    distanse_x = x - self.x - plus_x
    distanse_y = y - self.y - plus_y
    # 飛ばしタイプ
    # Get animation pass-through value
    type = @active_action[3]
    # Speed of animation
    speed = @active_action[4]
    # 軌道
    # Orbit/arc
    orbit = @active_action[5]
    # 自身が開始位置なら
    # If origin is self
    if @active_action[8] == 0
      @move_anime.base_x = self.x + plus_x
      @move_anime.base_y = self.y + plus_y
    # 対象が開始位置なら
    # If origin is target
    elsif @active_action[8] == 1
      @move_anime.base_x = x + plus_x
      @move_anime.base_y = y + plus_y
      # 距離を反対に
      distanse_y = distanse_y * -1
      distanse_x = distanse_x * -1
    # 動かさないなら
    # If other origin
    else
      @move_anime.base_x = x
      @move_anime.base_y = y
      distanse_x = distanse_y = 0
    end
    # 武器アクションなしは武器表示しない
    # Flying graphic is nothing
    if @active_action[10] == ""
      weapon = "" 
    # アニメなしエネミーは武器表示しない
    # If there is a weapon action
    else
      # 飛ばす武器グラフィックが指定されているかチェック
      # Check if weapon has a flying graphic
      if @battler.is_a?(Game_Actor)
        battler = $game_party.members[@battler.index]
        weapon_id = battler.weapon_id
      else 
        battler = $game_troop.members[@battler.index]
        weapon_id = battler.weapon
      end 
      # スキル画像利用か武器画像利用か判別
      # Determine use of equipped weapon graphic or other graphic
      weapon_act = N01::ANIME[@active_action[10]].dup if @active_action[10] != ""
      # 3.4a
      # Moved the priority of skill flying graphic
      use_skill_item_graphic = false
      # Set skill flying graphic, 3.4a
      if weapon_act != nil && @battler.action.skill != nil
        skill_flygraphic = $data_skills[@battler.action.skill.id].flying_graphic
        # If skill has flying graphic
        if skill_flygraphic.downcase == "icon"
          icon_weapon = true
          use_skill_item_graphic = true
          weapon = @active_action[10]
          weapon_name = $data_skills[@battler.action.skill.id].icon_index
       
        elsif DSI::WEAPON_WITH_SKILL.include?(@battler.action.skill_id)
          icon_weapon = true
          use_skill_item_graphic = true
          weapon = @active_action[10]
          weapon_name = $data_weapons[@battler.weapons[0].id].icon_index
       
        elsif skill_flygraphic != ""
          icon_weapon = false
          use_skill_item_graphic = true
          weapon = @active_action[10]
          weapon_name = skill_flygraphic
        end
      # Set item flying graphic, 3.4a
      elsif weapon_act != nil && @battler.action.item != nil
        item_flygraphic = $data_items[@battler.action.item.id].flying_graphic
        # if item has a flying graphic
        if item_flygraphic.downcase == "icon"
          icon_weapon = true
          use_skill_item_graphic = true
          weapon = @active_action[10]
          weapon_name = $data_items[@battler.action.item.id].icon_index
        elsif item_flygraphic != ""
          icon_weapon = false
          use_skill_item_graphic = true
          weapon = @active_action[10]
          weapon_name = item_flygraphic
        end
      end
      # 武器画像利用で素手でなければ
      # If user has a weapon, utilize graphics
      if weapon_id != 0 && weapon_act.size == 3 && !use_skill_item_graphic # 3.4a
        weapon_file = $data_weapons[weapon_id].flying_graphic
        weapon_file = "" if weapon_file.downcase == "icon" # 3.4a
        # If a flying graphic is not given, get weapon graphic
        if weapon_file == ""
          weapon_name = $data_weapons[weapon_id].graphic
          icon_weapon = false
          # さらに指定がなければアイコングラフィックを利用
          # If weapon graphic is not found, get Iconset graphic.
          if weapon_name == ""
            weapon_name = $data_weapons[weapon_id].icon_index
            icon_weapon = true
          end 
        # 指定されていればそのグラフィック名を取得 
        # If there is a specified graphics
        else
          icon_weapon = false
          weapon_name = weapon_file
        end
        # 武器アクション情報を取得
        # Get weapon action
        weapon = @active_action[10]
      # 武器画像利用で素手なら表示しない
      elsif weapon_act.size == 3 && !use_skill_item_graphic # 3.4a
        weapon = ""
      end
    end
    # Z座標を決定
    @move_anime.z = 1
    @move_anime.z = 1000 if @active_action[9]
   
    @move_anime2 = @move_anime
    # 以上の情報を全てアニメ飛ばしスプライトに送る
    @move_anime.anime_action(id,mirror,distanse_x,distanse_y,type,speed,orbit,weapon,weapon_name,icon_weapon)
  end 
end

itu ada sample skill... dari ojekan ane sih :hammer:



Credits


  • richter_h :D kalo emang kepake ni skrip :D


Deviant Skill Icon - Tankentai only Empty2011-06-11, 15:02
PostRe: Deviant Skill Icon - Tankentai only
#2
KID_VX 
Senior
Senior
KID_VX

Level 5
Posts : 959
Thanked : 24
Engine : Multi-Engine User
Skill : Very Beginner
Type : Developer

Deviant Skill Icon - Tankentai only Vide
:hmm: addon ya :hmm:
nice, tapi sayangnya daku bukan pengguna tankentai :swt:
btw :
Quote :
pasti ngga bisa dipake sama CMS lain macem Melody apalagi DBS :kabur:
bukan CMS, tapi CBS :swt:

Enjoy 8)
Deviant Skill Icon - Tankentai only Empty2011-06-11, 15:08
PostRe: Deviant Skill Icon - Tankentai only
#3
richter_h 
Salto Master
Hancip RMID
richter_h

Kosong
Posts : 1705
Thanked : 30
Engine : Other
Skill : Skilled
Type : Developer
Awards:

Deviant Skill Icon - Tankentai only Vide
@babeh calon mertua :malu:

makasih udah ngingetin CMS :muach:
Deviant Skill Icon - Tankentai only Empty2011-06-11, 15:25
PostRe: Deviant Skill Icon - Tankentai only
#4
ashm 
Veteran
Veteran
ashm

Level 5
Posts : 1131
Thanked : 8
Engine : RMVX Ace
Skill : Intermediate
Type : Event Designer
Awards:

Deviant Skill Icon - Tankentai only Vide
Ini utk hero yg skill nya multi weapon user ya? Tapi ane tertarik ama flying icon nya. Nice script dude..

Tapi bukmak dlu deh, ane lgi gk ngerjain proyek fantasy, tapi... Adaa deeh...

Deviant Skill Icon - Tankentai only Empty2011-06-23, 14:06
PostRe: Deviant Skill Icon - Tankentai only
#5
Afiezer 
Newbie
Newbie
Afiezer

Level 5
Posts : 7
Thanked : 0
Engine : RMVX
Skill : Beginner
Type : Artist

Deviant Skill Icon - Tankentai only Vide
[b]Maap numpang lewat .. :wave: mau tanya nih gimana ya caranya mengakhiri game RPG VX yg udah selesai ? please reply ! :cry: :sembah:
Spoiler:
Deviant Skill Icon - Tankentai only Empty
PostRe: Deviant Skill Icon - Tankentai only
#6
Sponsored content 




Deviant Skill Icon - Tankentai only Vide
 

Deviant Skill Icon - Tankentai only

Topik sebelumnya Topik selanjutnya Kembali Ke Atas 

Similar topics

+
Halaman 1 dari 1

Permissions in this forum:Anda tidak dapat menjawab topik
RPGMakerID :: Scripts & Event Systems :: RMVX Scripts-