扫描二维码关注官方公众号
返回列表
+ 发新帖
查看: 128|回复: 0

[转载发布] 求大神把VA的浮空图标Ver.1.2改写成MV的吧~~~~

[复制链接]
累计送礼:
0 个
累计收礼:
0 个
  • TA的每日心情
    开心
    2025-2-4 02:05
  • 签到天数: 110 天

    连续签到: 2 天

    [LV.6]常住居民II

    2327

    主题

    395

    回帖

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    VIP
    6
    卡币
    10465
    OK点
    16
    推广点
    0
    同能卷
    0
    积分
    13215

    灌水之王

    发表于 2024-2-17 00:11:28 | 显示全部楼层 |阅读模式
    如题,在VA时代的时候真心觉得浮空图标Ver.1.2这个插件的效果萌萌哒,可惜找了很久mv貌似没有这类插件的样子,只能寄希望于各路大神,大神们无聊的时候就顺手把这个插件转成MV的吧。下面附上原始代码
    浮空图标Ver.1.2 ----VA脚本:RUBY 代码
    1. #========================================================#
    2. #                 浮空图标Ver.1.2                         #
    3. #========================================================#
    4. =begin
    5. 作者:tomoaky
    6. (伪)汉化:delv25
    7. 你可以在得到物品后弹出浮空图标。
    8. 请运行以下命令事件“脚本”
    9.   pop_icon(event_id的,icon_id,持续时间)
    10. 号icon_id图标被显示在事件号event_id的开销。
    11.   运行事件本身是一个值为0 event_id的,
    12.   玩家们可如果你指定为-1。
    13.   持续时间越长,你可以省略,默认时间120帧,也可以在下面调整。
    14.   例子:pop_icon(-1, 17, 300)
    15.   在游戏里显示5秒(300帧)的的非战斗图标。
    16.   有没有效果,当您运行的的命令pop_icon在图标视图。
    17.   如果你想看到的图标紧接该命令delete_icon
    18.   请运行命令pop_icon,删除图标。
    19. 注解:我算过了,第一个空的图标不算,是从第二个实图标开始算起。
    20.   例子:delete_icon(-1)
    21.   删除被显示在游戏窗口中的图标
    22. “铠甲”变动“武器”更改“项”命令作为奖金事件
    23.   在执行时,自动显示一个图标的能力。
    24.   您要查看游戏的图标(默认是变量6)的变量可以改变的,(脚本下面改)
    25.   虽然该值是相同至于pop_icon event_id的命令,指定以下内容:-2
    26.   然后,您可以关闭。(翻译无能=A=)
    27. 默认变量:006
    28. 2012.01.19 Ver1.2
    29. - 添加delete_icon命令删除的图标弹出显示
    30. 自主移动命令脚本[自定义]
    31. 修正了一个错误,功能的弹出图标不工作
    32. 2011.12.21 Ver1.11
    33. ·修正了一个错误的图标时,不会出现指定为0,并行的event_id
    34. 2011.12.17 VER1.1
    35. - 我已经添加了能够在命令中指定的显示时间
    36.   本脚本已由永月极圣(Salvareless)改为在角色头上弹出图标
    37. =end
    38. #==============================================================================
    39. # □ 项目设定
    40. #==============================================================================
    41. module TMICPOP
    42.   GRAVITY = 24              # 重力根据图标
    43.   SPEED   = -320            # 初始速度(Y坐标)的图标
    44.   VN_TARGET = 44             # 控制开关?(翻译无能嘛)
    45. end
    46. #==============================================================================
    47. # □ 命令(嘛……下面的我就自动用谷歌翻译了……不要在意那些细节……)
    48. #==============================================================================
    49. module TMICPOP
    50. module Commands
    51.   #--------------------------------------------------------------------------
    52.   # ○ 开始
    53.   #--------------------------------------------------------------------------
    54.   def pop_icon(event_id, icon_id, duration = 45)
    55.     target = get_character(-1)
    56.     returnunless target
    57.     target.icpop_id = icon_id
    58.     target.icpop_duration = duration
    59.   end
    60.   #--------------------------------------------------------------------------
    61.   # ○ 删除
    62.   #--------------------------------------------------------------------------
    63.   def delete_icon(event_id)
    64.     target = get_character(-1)
    65.     returnunless target
    66.     target.icpop_delete_flag = true
    67.   end
    68. end
    69. end# module TMICPOP
    70. #==============================================================================
    71. # ■ Game_CharacterBase
    72. #==============================================================================
    73. class Game_CharacterBase
    74.   #--------------------------------------------------------------------------
    75.   # ● 公共变量数?
    76.   #--------------------------------------------------------------------------
    77.   attr_accessor :icpop_id                 # 图标 ID
    78.   attr_accessor :icpop_duration           # 图标显示時間
    79.   attr_accessor :icpop_delete_flag        # 消除图标
    80.   #--------------------------------------------------------------------------
    81.   # ● 公共变量数的初始化
    82.   #--------------------------------------------------------------------------
    83.   alias tmicpop_game_characterbase_init_public_members init_public_members
    84.   def init_public_members
    85.     tmicpop_game_characterbase_init_public_members
    86.     @icpop_id = 0
    87.     @icpop_duration = 0
    88.     @icpop_delete_flag = false
    89.   end
    90. end
    91. #==============================================================================
    92. # ■ Sprite_Character
    93. #==============================================================================
    94. class Sprite_Character
    95.   #--------------------------------------------------------------------------
    96.   # ● オブジェクト初期化
    97.   #     character : Game_Character
    98.   #--------------------------------------------------------------------------
    99.   alias tmicpop_sprite_character_initialize initialize
    100.   def initialize(viewport, character = nil)
    101.     @icpop_duration = 0
    102.     tmicpop_sprite_character_initialize(viewport, character)
    103.   end
    104.   #--------------------------------------------------------------------------
    105.   # ● 解放
    106.   #--------------------------------------------------------------------------
    107.   alias tmicpop_sprite_character_dispose dispose
    108.   def dispose
    109.     dispose_icpop
    110.     tmicpop_sprite_character_dispose
    111.   end
    112.   #--------------------------------------------------------------------------
    113.   # ● 帧更新
    114.   #--------------------------------------------------------------------------
    115.   alias tmicpop_sprite_character_update update
    116.   def update
    117.     update_icpop
    118.     tmicpop_sprite_character_update
    119.   end
    120.   #--------------------------------------------------------------------------
    121.   # ● 新的效果设定
    122.   #--------------------------------------------------------------------------
    123.   alias tmicpop_sprite_character_setup_new_effect setup_new_effect
    124.   def setup_new_effect
    125.     tmicpop_sprite_character_setup_new_effect
    126.     if !@icpop_sprite && @character.icpop_id > 0
    127.       @icpop_id = @character.icpop_id
    128.       @character.icpop_id = 0
    129.       start_icpop
    130.     end
    131.   end
    132.   #--------------------------------------------------------------------------
    133.   # ○ 图标表示的开端
    134.   #--------------------------------------------------------------------------
    135.   def start_icpop
    136.     dispose_icpop
    137.     @icpop_duration = @icpop_duration_max = @character.icpop_duration
    138.     @icpop_sprite = ::Sprite.new(viewport)
    139.     @icpop_sprite.bitmap = Cache.system("IconSet")
    140.     @icpop_sprite.src_rect.set(@icpop_id % 16 * 24, @icpop_id / 16 * 24, 24, 24)
    141.     @icpop_sprite.ox = 12
    142.     @icpop_sprite.oy = 24
    143.     @icpop_y_plus = 0
    144.     @icpop_y_speed = TMICPOP::SPEED
    145.     update_icpop
    146.   end
    147.   #--------------------------------------------------------------------------
    148.   # ○ 图标施放
    149.   #--------------------------------------------------------------------------
    150.   def dispose_icpop
    151.     @character.icpop_delete_flag = false
    152.     if@icpop_sprite
    153.       @icpop_sprite.dispose
    154.       @icpop_sprite = nil
    155.     end
    156.   end
    157.   #--------------------------------------------------------------------------
    158.   # ○ 图标更新
    159.   #--------------------------------------------------------------------------
    160.   def update_icpop
    161.     if@icpop_duration > 0
    162.       @icpop_duration -= 1
    163.       if@character.icpop_delete_flag
    164.         @icpop_duration = 0
    165.         dispose_icpop
    166.       elsif@icpop_duration > 0
    167.         @icpop_sprite.x = x
    168.         @icpop_y_plus += @icpop_y_speed
    169.         @icpop_y_speed += TMICPOP::GRAVITY
    170.         if@icpop_y_plus > 0
    171.           @icpop_y_plus = 0 - @icpop_y_plus
    172.           @icpop_y_speed = 0 - @icpop_y_speed / 2
    173.         end
    174.         @icpop_sprite.y = y - height + (@icpop_y_plus / 256)
    175.         @icpop_sprite.z = z + 200
    176.         @icpop_sprite.opacity = (@icpop_duration < 16 ? @icpop_duration * 16 :
    177.           (@icpop_duration_max - @icpop_duration) * 32)
    178.       else
    179.         dispose_icpop
    180.         @character.icpop_id = 0
    181.       end
    182.     end
    183.   end
    184. end
    185. #==============================================================================
    186. # ■ Game_Event
    187. #==============================================================================
    188. class Game_Event
    189.   includeTMICPOP::Commands
    190.   #--------------------------------------------------------------------------
    191.   # ○ キャラクターの取得
    192.   #  #PARAM:此事件ID,否则游戏中显示浮空图标?如果0 -1
    193.   #--------------------------------------------------------------------------
    194.   def get_character(param)
    195.     if param < 0
    196.       $game_player
    197.     else
    198.       $game_map.events[param > 0 ? param : @id]
    199.     end
    200.   end
    201. end
    202. #==============================================================================
    203. # ■ Game_Interpreter
    204. #==============================================================================
    205. class Game_Interpreter
    206.   includeTMICPOP::Commands
    207.   #--------------------------------------------------------------------------
    208.   # ● 物品の増減
    209.   #--------------------------------------------------------------------------
    210.   alias tmicpop_game_interpreter_command_126 command_126
    211.   def command_126
    212.     tmicpop_game_interpreter_command_126
    213.     value = operate_value(@params[1], @params[2], @params[3])
    214.     if value > 0
    215.       if$game_variables[TMICPOP::VN_TARGET] >= -1 && !$game_party.in_battle
    216.         item = $data_items[@params[0]]
    217.         pop_icon($game_variables[TMICPOP::VN_TARGET], item.icon_index)
    218.       end
    219.     end
    220.   end
    221.   #--------------------------------------------------------------------------
    222.   # ● 武器の増減
    223.   #--------------------------------------------------------------------------
    224.   alias tmicpop_game_interpreter_command_127 command_127
    225.   def command_127
    226.     tmicpop_game_interpreter_command_127
    227.     value = operate_value(@params[1], @params[2], @params[3])
    228.     if value > 0
    229.       if$game_variables[TMICPOP::VN_TARGET] >= -1 && !$game_party.in_battle
    230.         item = $data_weapons[@params[0]]
    231.         pop_icon($game_variables[TMICPOP::VN_TARGET], item.icon_index)
    232.       end
    233.     end
    234.   end
    235.   #--------------------------------------------------------------------------
    236.   # ● 防具の増減
    237.   #--------------------------------------------------------------------------
    238.   alias tmicpop_game_interpreter_command_128 command_128
    239.   def command_128
    240.     tmicpop_game_interpreter_command_128
    241.     value = operate_value(@params[1], @params[2], @params[3])
    242.     if value > 0
    243.       if$game_variables[TMICPOP::VN_TARGET] >= -1 && !$game_party.in_battle
    244.         item = $data_armors[@params[0]]
    245.         pop_icon($game_variables[TMICPOP::VN_TARGET], item.icon_index)
    246.       end
    247.     end
    248.   end
    249. end
    复制代码

                本帖来自P1论坛作者salvareless,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=388518  若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
    天天去同能,天天有童年!
    回复 送礼论坛版权

    使用道具 举报

    文明发言,和谐互动
    文明发言,和谐互动
    高级模式
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    幸运抽奖

    社区每日抽奖来袭,快来试试你是欧皇还是非酋~

    立即查看

    聊天机器人
    Loading...

    QQ|Archiver|手机版|小黑屋|同能RPG制作大师 ( 沪ICP备12027754号-3 )

    GMT+8, 2025-3-10 16:12 , Processed in 0.109008 second(s), 53 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回复 返回顶部 返回列表