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

Project1

 找回密码
 注册会员
搜索
123
返回列表 发新帖
楼主: 忻緣
打印 上一主题 下一主题

血條顏色改成橫向漸變式。。

 关闭 [复制链接]

Lv1.梦旅人

空靈

梦石
0
星屑
50
在线时间
11 小时
注册时间
2006-7-27
帖子
521
21
 楼主| 发表于 2008-9-29 17:35:08 | 只看该作者
以下引用天圣的马甲于2008-9-29 9:25:59的发言:


    draw_actor_hp_meter(actor, x, y, 50)
    draw_actor_sp_meter(actor, x, y + 19, 50)


这里在你那里有的啊0 0直接可以调用,不过把后面那个50删掉,然后在我给你的那段脚本里修改width就行了。
那段脚本插在Main前面就能调用。

那個。。有描繪SP的麼。。-V-只有一個不能調。。-V-

星星在哪里都是很亮的,就看你有沒有抬頭去看他們                       --------華麗麗的百變暖暖窩
本人之作《夙誓》龜速進行中。。= =!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

綾川司の姫様<

梦石
0
星屑
50
在线时间
796 小时
注册时间
2007-12-20
帖子
4520

贵宾第3届短篇游戏大赛R剧及RMTV组亚军

22
发表于 2008-9-29 17:43:57 | 只看该作者
给你的脚本里这一部分是SP相关,可以自行修改的- -

  def draw_actor_sp_meter(actor,x,y)
    width = 128
    white = Color.new(255,255,255,200)
    black = Color.new(0,0,0,200)
    black2 = Color.new(0,0,0,100)
    startcolor = Color.new(0,0,255,200)
    endcolor = Color.new(0,255,255,200)
    w = width * actor.sp / actor.maxsp
    #黑色倒影
    self.contents.fill_rect(x+5, y+15, width-2, 1, black2)
    self.contents.fill_rect(x+4, y+16, width, 1, black2)
    self.contents.fill_rect(x+3, y+17, width+2, 9, black2)
    self.contents.fill_rect(x+4, y+26, width, 1, black2)
    self.contents.fill_rect(x+5, y+27, width-2, 1, black2)
    #白色边框
    self.contents.fill_rect(x+1, y+11, width-2, 1, white)
    self.contents.fill_rect(x, y+12, width, 1, white)
    self.contents.fill_rect(x-1, y+13, width+2, 9, white)
    self.contents.fill_rect(x, y+22, width, 1, white)
    self.contents.fill_rect(x+1, y+23, width-2, 1, white)
    #黑色背景
    self.contents.fill_rect(x+2, y+12, width-4, 1, black)
    self.contents.fill_rect(x+1, y+13, width-2, 1, black)
    self.contents.fill_rect(x, y+14, width, 7, black)
    self.contents.fill_rect(x+1, y+21, width-2, 1, black)
    self.contents.fill_rect(x+2, y+22, width-4, 1, black)
  if w > width/2
    draw_line(x+1, y+12, x+w-3, y+12, startcolor, 1, endcolor)
    draw_line(x, y+13, x+w-2, y+13, startcolor, 1, endcolor)
    draw_line(x-1, y+14, x+w-1, y+14, startcolor, 1, endcolor)
    draw_line(x-1, y+15, x+w-1, y+15, startcolor, 1, endcolor)
    draw_line(x-1, y+16, x+w-1, y+16, startcolor, 1, endcolor)
    draw_line(x-1, y+17, x+w-1, y+17, startcolor, 1, endcolor)
    draw_line(x-1, y+18, x+w-1, y+18, startcolor, 1, endcolor)
    draw_line(x-1, y+19, x+w-1, y+19, startcolor, 1, endcolor)
    draw_line(x-1, y+20, x+w-1, y+20, startcolor, 1, endcolor)
    draw_line(x, y+21, x+w-2, y+21, startcolor, 1, endcolor)
    draw_line(x+1, y+22, x+w-3, y+22, startcolor, 1, endcolor)
  else
    draw_line(x+1, y+12, x+w+1, y+12, startcolor, 1, endcolor)
    draw_line(x, y+13, x+w, y+13, startcolor, 1, endcolor)
    draw_line(x-1, y+14, x+w-1, y+14, startcolor, 1, endcolor)
    draw_line(x-1, y+15, x+w-1, y+15, startcolor, 1, endcolor)
    draw_line(x-1, y+16, x+w-1, y+16, startcolor, 1, endcolor)
    draw_line(x-1, y+17, x+w-1, y+17, startcolor, 1, endcolor)
    draw_line(x-1, y+18, x+w-1, y+18, startcolor, 1, endcolor)
    draw_line(x-1, y+19, x+w-1, y+19, startcolor, 1, endcolor)
    draw_line(x-1, y+20, x+w-1, y+20, startcolor, 1, endcolor)
    draw_line(x, y+21, x+w, y+21, startcolor, 1, endcolor)
    draw_line(x+1, y+22, x+w+1, y+22, startcolor, 1, endcolor)
  end
  end
  #--------------------------------------------------------------------------
  # ● ライン描画 by 桜雅 在土
  #--------------------------------------------------------------------------
  def draw_line(start_x, start_y, end_x, end_y, start_color, width = 1, end_color = start_color)
    # 描写距離の計算。大きめに直角時の長さ。
    distance = (start_x - end_x).abs + (start_y - end_y).abs
    # 描写開始
    if end_color == start_color
      for i in 1..distance
        x = (start_x + 1.0 * (end_x - start_x) * i / distance).to_i
        y = (start_y + 1.0 * (end_y - start_y) * i / distance).to_i
        if width == 1
          self.contents.set_pixel(x, y, start_color)
        else
          self.contents.fill_rect(x, y, width, width, start_color)
        end
      end
    else
      for i in 1..distance
        x = (start_x + 1.0 * (end_x - start_x) * i / distance).to_i
        y = (start_y + 1.0 * (end_y - start_y) * i / distance).to_i
        r = start_color.red * (distance-i)/distance + end_color.red * i/distance
        g = start_color.green * (distance-i)/distance + end_color.green * i/distance
        b = start_color.blue * (distance-i)/distance + end_color.blue * i/distance
        a = start_color.alpha * (distance-i)/distance + end_color.alpha * i/distance
        if width == 1
          self.contents.set_pixel(x, y, Color.new(r, g, b, a))
        else
          self.contents.fill_rect(x, y, width, width, Color.new(r, g, b, a))
        end
      end
    end
    end

生命即是责任。自己即是世界。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

空靈

梦石
0
星屑
50
在线时间
11 小时
注册时间
2006-7-27
帖子
521
23
 楼主| 发表于 2008-9-29 19:35:25 | 只看该作者
那個。。可以用了。。但是。。太寬了。。-V-應該在那哪邊改。。-V-

星星在哪里都是很亮的,就看你有沒有抬頭去看他們                       --------華麗麗的百變暖暖窩
本人之作《夙誓》龜速進行中。。= =!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

綾川司の姫様<

梦石
0
星屑
50
在线时间
796 小时
注册时间
2007-12-20
帖子
4520

贵宾第3届短篇游戏大赛R剧及RMTV组亚军

24
发表于 2008-9-29 19:52:58 | 只看该作者
宽度是width = 128这句话,可以自行修改数字。

生命即是责任。自己即是世界。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

空靈

梦石
0
星屑
50
在线时间
11 小时
注册时间
2006-7-27
帖子
521
25
 楼主| 发表于 2008-9-29 19:56:03 | 只看该作者
以下引用天圣的马甲于2008-9-29 11:52:58的发言:

宽度是width = 128这句话,可以自行修改数字。

我錯了。。-V-。。那個改了是長度。。-V-。。
可能我是把長度理解成寬度。。-V-

星星在哪里都是很亮的,就看你有沒有抬頭去看他們                       --------華麗麗的百變暖暖窩
本人之作《夙誓》龜速進行中。。= =!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

綾川司の姫様<

梦石
0
星屑
50
在线时间
796 小时
注册时间
2007-12-20
帖子
4520

贵宾第3届短篇游戏大赛R剧及RMTV组亚军

26
发表于 2008-9-29 19:59:23 | 只看该作者
喔,也就是血条的『厚度』的意思吧?
因为这些血条是用线叠起来的,所以要减少厚度,就减少线的数量就可以了。
   draw_line(x+1, y+12, x+w-3, y+12, startcolor, 1, endcolor)
   draw_line(x, y+13, x+w-2, y+13, startcolor, 1, endcolor)
   draw_line(x-1, y+14, x+w-1, y+14, startcolor, 1, endcolor)
   draw_line(x-1, y+15, x+w-1, y+15, startcolor, 1, endcolor)
   draw_line(x-1, y+16, x+w-1, y+16, startcolor, 1, endcolor)
   draw_line(x-1, y+17, x+w-1, y+17, startcolor, 1, endcolor)
   draw_line(x-1, y+18, x+w-1, y+18, startcolor, 1, endcolor)
   draw_line(x-1, y+19, x+w-1, y+19, startcolor, 1, endcolor)
   draw_line(x-1, y+20, x+w-1, y+20, startcolor, 1, endcolor)
   draw_line(x, y+21, x+w-2, y+21, startcolor, 1, endcolor)
   draw_line(x+1, y+22, x+w-3, y+22, startcolor, 1, endcolor)
#比如把这些描绘线条的语句注释掉


生命即是责任。自己即是世界。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

空靈

梦石
0
星屑
50
在线时间
11 小时
注册时间
2006-7-27
帖子
521
27
 楼主| 发表于 2008-9-29 20:03:59 | 只看该作者
謝謝天聖大人啦。。我知道怎么做了。。{/hx}

星星在哪里都是很亮的,就看你有沒有抬頭去看他們                       --------華麗麗的百變暖暖窩
本人之作《夙誓》龜速進行中。。= =!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-23 11:14

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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