设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1576|回复: 1
打印 上一主题 下一主题

[原创发布] 为行走图改色相时, 锁定特定颜色

[复制链接]

Lv5.捕梦者

梦石
0
星屑
37809
在线时间
5406 小时
注册时间
2006-11-10
帖子
6546
跳转到指定楼层
1
发表于 2022-12-9 11:25:19 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 灯笼菜刀王 于 2022-12-9 14:54 编辑

感觉挺好玩的, 这个应该有需求吧, 不知道有人写过没



用途: 为行走图更改色相时,锁定特定颜色不改

用法: 复制脚本后, 塞到 main 前, 之后去PS里给行走图底下增加一行像素(栗: 原本默认行走图高度是px192 增为193)
         然后在这行里点上需要锁定的颜色即可, 不加则按默认色相处理

多一行也不会影响原本的行走图效果, 放心加

冲突: 几乎没有吧

  1. #-----------------------------------------------------------------------
  2. # ● 锁色相      by 灯笼菜刀王 2022.12.9
  3. #
  4. # 用途: 为行走图更改色相时,锁定特定颜色不改
  5. #
  6. # 用法: 给行走图底下增加一行像素(栗: 原本默认行走图高度是px192 增为193)
  7. #       然后在这行里点上需要锁定的颜色即可
  8. #-----------------------------------------------------------------------
  9. module RPG
  10.   module Cache
  11.     def self.load_bitmap2(folder_name,filename,hue = 0)
  12.       path = folder_name + filename
  13.       if not @cache.include?(path) or @cache[path].disposed?
  14.         if filename != ""
  15.           @cache[path] = Bitmap.new(path)
  16.         else
  17.           @cache[path] = Bitmap.new(32,32)
  18.         end
  19.       end
  20.       if hue == 0
  21.         return @cache[path]
  22.       else
  23.         cf = []
  24.         if (h=@cache[path].height) % 4 == 1
  25.           (w = @cache[path].width).times do |i| #获取锁定颜色
  26.             c = @cache[path].get_pixel(i,h - 1)
  27.             next if c.alpha < 1
  28.             cf.push([c.red,c.green,c.blue])
  29.           end
  30.         end
  31.         key = [path, hue]
  32.         if [email protected]?(key) or @cache[key].disposed?
  33.           @cache[key] = @cache[path].clone
  34.           @cache[key].hue_change(hue)
  35.           return @cache[key] if cf.empty?
  36.           w.times do |i|
  37.             h.times do |j|
  38.               c = @cache[path].get_pixel(i,j)
  39.               next if !cf.include?([c.red,c.green,c.blue])
  40.               @cache[key].set_pixel(i,j,c)
  41.             end
  42.           end
  43.         end
  44.         return @cache[key]
  45.       end
  46.     end
  47.     def self.character(filename,hue=0)
  48.       self.load_bitmap2("Graphics/Characters/",filename,hue)
  49.     end
  50.   end
  51. end
复制代码

Lv4.逐梦者

梦石
0
星屑
6291
在线时间
1103 小时
注册时间
2015-8-15
帖子
658
2
发表于 2022-12-9 11:45:28 | 只看该作者
本帖最后由 金芒芒 于 2022-12-9 13:15 编辑

能在class Scene_Title背景图自动渐变吗
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-4-29 05:16

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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