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

Project1

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

[有事请教] 精灵坐标的位置我想要改为屏幕固定位置

[复制链接]

Lv4.逐梦者

梦石
0
星屑
6291
在线时间
1103 小时
注册时间
2015-8-15
帖子
658
跳转到指定楼层
1
发表于 2023-6-8 11:51:24 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

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

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

x
我想要改为屏幕固定位置不是跟随角色移动而移动
sprite.y = shif ? @character.screen_y-92 : @character.screen_y-60  

Lv5.捕梦者

梦石
24
星屑
7017
在线时间
247 小时
注册时间
2020-12-4
帖子
306

极短24获奖极短23获奖极短22获奖

2
发表于 2023-6-8 14:16:37 | 只看该作者
@character 只要不是$game_player 就不是角色了呀
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
6291
在线时间
1103 小时
注册时间
2015-8-15
帖子
658
3
 楼主| 发表于 2023-6-8 14:53:22 | 只看该作者
本帖最后由 金芒芒 于 2023-6-8 15:08 编辑
纯属小虫 发表于 2023-6-8 14:16
@character 只要不是$game_player 就不是角色了呀

大脚是绿色小三角形
他是临时角色 他现在是顶着角色的头顶在走 我想要跟第一幅图一样固定显示屏幕位置
RUBY 代码复制
  1. #==============================================================================
  2. # ■  RMXP
  3.   #--------------------------------------------------------------------------
  4.   #  作者:刺夜之枪
  5. #==============================================================================
  6. #==============================================================================
  7. # ■ Sprite_Character
  8. #==============================================================================
  9.  
  10. class Sprite_Character < RPG::Sprite
  11.   #--------------------------------------------------------------------------
  12.   # ● 参数设置 正太君改
  13.   #--------------------------------------------------------------------------
  14.   # 设置图片文件名.不想要底图就让底图完全透明或设置为 ""
  15.   # 图片放在 Graphics/Pictures/ 文件夹下
  16.   TeamTagFileName = "大脚"#wodeshib
  17.   # 设置显示友军标记的开关号
  18.   TeamTagBar = 10
  19.  
  20.   #--------------------------------------------------------------------------
  21.   # ● 初始化对像
  22.   #--------------------------------------------------------------------------
  23.   #别名hzhj旧初始化使标记初始化
  24.   alias hzhj_old_init_make_tag initialize
  25.   #定义初始化参数
  26.   def initialize(*args)
  27.  
  28.     @team_tag_sprite = Sprite.new(args[0])
  29.     @tags_sprites = []
  30.     @tags_sprites << @team_tag_sprite
  31.     @team_tag_sprite.bitmap = RPG::Cache.picture(TeamTagFileName)
  32.  
  33.     @team_flag_sprite = Sprite.new(args[0])
  34.     @team_flag_sprite.bitmap =  RPG::Cache.picture("队标1")
  35.    # @team_flag_sprite.bitmap = RPG::Cache.icon(Figter_data::CHARACTER_NAME)
  36.    # if args == [2]RPG::Cache.icon(Figter_data::CHARACTER_NAME[@selected_units[@index][i]])
  37.    # @team_flag_sprite.bitmap = RPG::Cache.Icons("E_HeavyInfantry")
  38.    # end
  39.     @tags_sprites << @team_flag_sprite
  40.  
  41.     @count = 0
  42.     @wait_count = 0
  43.  
  44.     hzhj_old_init_make_tag(*args)
  45.   end
  46.   #--------------------------------------------------------------------------
  47.   # ● 释放
  48.   #--------------------------------------------------------------------------
  49.   alias hzhj_old_dispose_make_tag dispose unless $@
  50.   def dispose
  51.     @tags_sprites.each{|sprite|sprite.dispose}
  52.     hzhj_old_dispose_make_tag
  53.   end
  54.   #--------------------------------------------------------------------------
  55.   # ● 获取事件 HP # 正太君改
  56.   #--------------------------------------------------------------------------
  57.   def event_hp
  58.      return 0 if @character.nil?
  59.      return 0 if @character.is_a?(Game_Player)
  60.      return @character.hp
  61.   end
  62. =begin   
  63.   #--------------------------------------------------------------------------
  64.   # ● 判断是否显示队友标记
  65.   #--------------------------------------------------------------------------
  66.   def show_team_tag?
  67.     #under construct
  68.     return false if @character.is_a?(Game_Player)
  69.     return false if $scene.group_lisenter == nil
  70.     selected = $scene.group_lisenter.include?(@character.group)
  71.  
  72.     if event_hp > 0 and @character.team == 1 and selected and [email protected]
  73.        return $game_switches[TeamTagBar]
  74.     else
  75.       return false
  76.     end  
  77.     
  78.   end
  79. =end
  80.   #--------------------------------------------------------------------------
  81.   # ● 判断是否显示队长旗子
  82.   #--------------------------------------------------------------------------
  83.   def show_team_flag?
  84.     return false if @character.is_a?(Game_Player)
  85.     return false if @character.is_a?(EFS_Hero)
  86.     return false if $scene.group_lisenter == nil
  87.     selected = $scene.group_lisenter.include?(@character.group)
  88.  
  89.     cp = $scene.team_groups[@character.group-1].captain
  90.     if cp == @character
  91.        return $game_switches[TeamTagBar]
  92.    else
  93.       return false
  94.     end  
  95.   #  cp = $scene.team_groups[@character.group-1].captain
  96.   # if cp == @character
  97. #  bitmap = nil
  98.    # @character.id= Figter_data::data_id
  99. #   case @character.id
  100.   # 队长 id 为 2 显示 E_HeavyInfantry
  101.    # when 2 then bitmap = RPG::Cache.Icons("E_HeavyInfantry")
  102.    # end
  103.    # @team_flag_sprite.bitmap = bitmap if bitmap
  104.    # end   
  105.  
  106. end
  107.  
  108.   #--------------------------------------------------------------------------
  109.   # ● 判断是否显示队友标记
  110.   #--------------------------------------------------------------------------
  111.   def show_team_tag?
  112.     #under construct
  113.     return false if @character.is_a?(Game_Player)
  114.     return false if $scene.group_lisenter == nil
  115.     @selected = $scene.group_lisenter.include?(@character.group)
  116.  
  117.     if event_hp > 0 and @character.team == 1 and !@character.removed # and selected
  118.        return $game_switches[TeamTagBar]
  119.     else
  120.       return false
  121.     end  
  122.  
  123.   end
  124.  
  125.   #--------------------------------------------------------------------------
  126.   # ● 更新画面
  127.   #--------------------------------------------------------------------------
  128.   alias hzhj_old_update_make_tag update
  129.   def update
  130.     hzhj_old_update_make_tag
  131.     if !@character.is_a?(EFS_Battler) and !@character.is_a?(Game_Player)
  132.       @tags_sprites.each{|sprite|sprite.visible = false}
  133.     else
  134.       if show_team_flag?
  135.         @team_flag_sprite.visible =  true
  136.       else  
  137.         @team_flag_sprite.visible =  false
  138.       end  
  139.       # 刷新 标记 可见状态
  140.       if show_team_tag?
  141.  
  142.         @team_tag_sprite.visible =  true
  143.  
  144.         if @selected
  145.           @tags_sprites.each do |sprite|
  146.  
  147.  
  148.           sprite.ox = sprite.bitmap.width / 2
  149.           sprite.oy = sprite.bitmap.height
  150.           sprite.z = z
  151.          # 精灵.x =   @性格。屏幕_x
  152.           sprite.x = @character.screen_x
  153.           sprite.x = @character.screen_x
  154.           #blink_on
  155.           shif = @character.is_cal
  156.           if @character.ammo>0
  157.           sprite.y = shif ? @character.screen_y-92 : @character.screen_y-60
  158.           else
  159.           sprite.y = shif ? @character.screen_y-82 : @character.screen_y-50
  160.           end
  161.           sprite.opacity = 255
  162.           end#loop
  163.  
  164.         else
  165.  
  166.         # 刷新坐标
  167.         @tags_sprites.each do |sprite|
  168.           #sprite.zoom_y = 1
  169.           sprite.ox = sprite.bitmap.width / 2
  170.           sprite.oy = sprite.bitmap.height
  171.           sprite.z = z
  172.           sprite.x = @character.screen_x
  173.           #blink_on
  174.           shif = @character.is_cal
  175.           if @character.ammo>0
  176.           sprite.y = shif ? @character.screen_y-92 : @character.screen_y-60
  177.           else
  178.           sprite.y = shif ? @character.screen_y-82 : @character.screen_y-50
  179.           end
  180.           sprite.opacity = 125
  181.         end#loop
  182.  
  183.         end #if include
  184.  
  185.       else
  186.         @tags_sprites.each{|sprite|sprite.visible = false}
  187.       end
  188.  
  189.     end
  190.  
  191.  
  192.  
  193.   end
  194.  
  195.  
  196. end

完成.png (220.89 KB, 下载次数: 2)

完成.png

1354.png (180.27 KB, 下载次数: 0)

1354.png
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-28 08:39

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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