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

Project1

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

[原创发布] 双行窗口系列_光标美化合体版--更新追加图片

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
81
在线时间
54 小时
注册时间
2008-12-24
帖子
345
跳转到指定楼层
1
发表于 2009-7-26 11:13:23 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 kula1900 于 2009-7-29 19:18 编辑

#================================================================
# ■ Window_Command_双行窗口系列_光标美化合体版
#------------------------------------------------------------------------------
#   作者:陈凌枫の名:kula1900整合
#================================================================
class Window_Command < Window_Selectable
#--------------------------------------------------------------------------
# ● 初始化对像
# width : 窗口的宽
# commands : 命令字符串序列
#--------------------------------------------------------------------------
def initialize(width, commands, column = 1, size = 22)
   @size = size
   row = commands.size / column
   size += 10
   @size_no = size
   super(0, 0, width, row * @size_no + 32)
   @item_max = commands.size
   @commands = commands
   @row = row
   @width_txt = (width - @size_no)/column
   @height = @item_max/column
   @height *= @size_no
   self.contents = Bitmap.new(width - 32, @height)
   self.visible = true
   @item = []
   self.index = 0
   @column_max = column
   @old = 0
   refresh
end
#--------------------------------------------------------------------------
# ● 刷新
#--------------------------------------------------------------------------
def refresh
   self.contents.clear
   for i in 0...@item_max
     if i != self.index
       draw_item_dis(i)
     else
       draw_item_active(i, @item)
     end
   end
end
#--------------------------------------------------------------------------
# ● 未选中项目描绘
# index : 项目编号
# color : 文字色
#--------------------------------------------------------------------------
def draw_item_dis(index)
   row_index = index / @column_max
   i = index
   i %= @column_max
   rect = Rect.new(i * @width_txt, @size_no * row_index , @width_txt - 8, @size_no)
   self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
   self.contents.font.color = Color.new(0,0,0,255)
   self.contents.font.size = @size - 2
   self.contents.draw_text(i * @width_txt, @size_no * row_index + 1, @width_txt, @size_no, @commands[index])
   self.contents.draw_text(i * @width_txt, @size_no * row_index - 1, @width_txt, @size_no, @commands[index])
   self.contents.draw_text(i * @width_txt - 1, @size_no * row_index, @width_txt, @size_no, @commands[index])
   self.contents.draw_text(i * @width_txt + 1, @size_no * row_index, @width_txt, @size_no, @commands[index])
   self.contents.font.color = disabled_color
   self.contents.draw_text(rect, @commands[index])
end
#--------------------------------------------------------------------------
# ● 选中项目描绘
# index : 项目编号
#  type : 是否无效化
#--------------------------------------------------------------------------
def draw_item_active(index, type)
   i = index
   i %= @column_max
   row_index = index / @column_max
   rect = Rect.new(i * @width_txt, @size_no * row_index, @width_txt - 8, @size_no)
   self.contents.fill_rect(rect, Color.new(0, 0, 0, 0))
   # 此处定义被选中且未被无效化得文字色--上色
   self.contents.font.color = Color.new(255, 255, 255, 120)
   self.contents.font.size = @size
   self.contents.draw_text(i * @width_txt, @size_no * row_index + 1, @width_txt, @size_no, @commands[index])
   self.contents.draw_text(i * @width_txt, @size_no * row_index - 1, @width_txt, @size_no, @commands[index])
   self.contents.draw_text(i * @width_txt - 1, @size_no * row_index, @width_txt, @size_no, @commands[index])
   self.contents.draw_text(i * @width_txt + 1, @size_no * row_index, @width_txt, @size_no, @commands[index])
   self.contents.font.color = disabled_color
   self.contents.draw_text(rect, @commands[index])
   if type == 1
     self.contents.font.color = disabled_color
   else
     # 此处定义被选中且未被无效化得文字色--底色
     self.contents.font.color = Color.new(255, 255, 255, 255)
   end
  self.contents.draw_text(i * @width_txt - 1, @size_no * row_index, @width_txt, @size_no, @commands[index])
end
#--------------------------------------------------------------------------
# ● 项目无效化
# index : 项目编号
#--------------------------------------------------------------------------
def disable_item(index)
   @item[index] = 1
end  
#--------------------------------------------------------------------------
# ● 刷新方法更新
#--------------------------------------------------------------------------
def update
   super
   #——这里使用的刷新方法比直接refresh节约很多内存
   if self.index != @old
     @old = self.index
     refresh
   end
end
def update_cursor_rect
      self.cursor_rect.empty
   end
end
# 生成命令脚本
size = 字daxiao
@command_window = Window_Command.new(width, commands, column = 1, size = 22)



丧尸语录-终の千年
类型:恐怖
      爱情
      悬疑
      休闲
の名:千年の制裁の
系统--- 50%
画面---  0%
美工---  0%
地图---  0%
数据库-  0%
剧情---  50%

Lv3.寻梦者

孤独守望

梦石
0
星屑
3121
在线时间
1534 小时
注册时间
2006-10-16
帖子
4321

开拓者贵宾

2
发表于 2009-7-26 11:14:59 | 只看该作者
本帖最后由 IamI 于 2009-7-26 11:17 编辑

勇气可嘉。
但是Command是永不refresh的哦
这么update反而花内存
(我是不是吃不到葡萄说葡萄酸……)
菩提本非树,明镜本非台。回头自望路漫漫。不求姻缘,但求再见。
本来无一物,何处惹尘埃。风打浪吹雨不来。荒庭遍野,扶摇难接。
不知道多久更新一次的博客
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦·贤者

梦石
0
星屑
50
在线时间
1141 小时
注册时间
2007-12-15
帖子
4100
3
发表于 2009-7-26 11:15:33 | 只看该作者
窗口的话,于己有用就成
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
6545
在线时间
1666 小时
注册时间
2008-10-29
帖子
6710

贵宾

4
发表于 2009-7-26 11:24:31 | 只看该作者
本帖最后由 后知后觉 于 2009-7-26 11:26 编辑

1.能标示版本号的尽量标示。以备下次优化更新。
2.可以用图片来表现脚本效果的最好附上截图~
3.请问楼主你是否就是 陈凌枫 ,如果不是此贴一日后转至【地球村】。如楼主无回复则依据版规

2)本版所有发帖默认为原创,如果转载请到地球村(翻译脚本也到地球村)

如因此发生版权纠纷。楼主自行负责~











你知道得太多了

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
81
在线时间
54 小时
注册时间
2008-12-24
帖子
345
5
 楼主| 发表于 2009-7-26 19:41:21 | 只看该作者
本人笔名 陈凌枫
丧尸语录-终の千年
类型:恐怖
      爱情
      悬疑
      休闲
の名:千年の制裁の
系统--- 50%
画面---  0%
美工---  0%
地图---  0%
数据库-  0%
剧情---  50%
回复 支持 反对

使用道具 举报

Lv1.梦旅人

风雪夜不归人

梦石
0
星屑
50
在线时间
276 小时
注册时间
2006-3-7
帖子
6721

贵宾

6
发表于 2009-7-26 23:20:22 | 只看该作者
请给个图
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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