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

Project1

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

[已经过期] 关于VA中地图的基础问题(可能是我没表达清楚已上图)

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
51 小时
注册时间
2014-3-18
帖子
13
跳转到指定楼层
1
发表于 2014-4-1 11:29:47 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
本帖最后由 流着水的你の眼 于 2014-4-1 21:06 编辑

(1)VA在中的人物都是2头身的,我想做3头身的,可是VA中默认地图都是与2头身配套的,的是不是表示,VA中的默认的地图元件都用不了了啊,

(2)VA中默认的地图编辑器是俯视的,我想画45度的地图,如何将俯视的地图编辑格子转成空间45度的啊,
PS:我从未用过rpg maker 搜了一些帖子 但看到一头雾水,特请大家帮帮忙,谢谢了

Lv2.观梦者

梦石
0
星屑
473
在线时间
487 小时
注册时间
2011-10-12
帖子
407
5
发表于 2014-4-1 22:01:23 | 只看该作者
本帖最后由 gaogs123456 于 2014-4-1 22:03 编辑

你可以这样:门的那黑色区域可以在上面再加一层
房屋加高一层,
范例地图是很难配合的,所以要大幅度的改动了。


就像这样加高,当然了,有更好的素材那是最好的选择。

也可以配合这个脚本,对事件进行放大(使用方法在事件名称里加上48-53行任意一种),比如<zm 2.0, 2.0>就是事件XY放大2倍。
不用担心空白事件,就算被放大了也是看不见的。
  1. #==============================================================================
  2. # ★ RGSS3_キャラクター表示拡張 Ver1.01
  3. #==============================================================================
  4. =begin

  5. 作者:tomoaky
  6. webサイト:ひきも記 (http://hikimoki.sakura.ne.jp/)

  7. キャラクタースプライトに以下の機能を追加します。
  8.   ・任意の拡大率に変更
  9.   ・任意の回転角度に変更
  10.   ・拡大縮小アニメーション
  11.   ・ふらふらアニメーション
  12.   ・円運動アニメーション

  13. イベントコマンド『スクリプト』で以下のコマンドが使えるようになります。
  14.   set_angle(event_id, angle)
  15.     指定したIDのイベントの回転角度を angle に変更します(0 ~ 360)

  16.   set_zoom(event_id, zoom_x, zoom_y)
  17.     指定したIDのイベントの拡大率を zoom_x, zoom_y に変更します、
  18.     zoom(1, 1.5, 3.0) とした場合はイベントID1を横1.5倍、縦3倍。
  19.     zoom_y を省略した場合は縦横ともに zoom_x の値に変更します
  20.   
  21.   set_zoom_anime(event_id, flag)
  22.     指定したIDのイベントが拡大と縮小を繰り返すようになります。
  23.     flag が true なら機能オン、false なら機能オフ
  24.    
  25.   set_swing_anime(event_id, angle)
  26.     指定したIDのイベントがふらふらと揺れるようになります。
  27.     angle には揺れ幅を指定してください(0 ~ 360)、省略すると止まります
  28.   
  29.   set_circle_anime(event_id, dist)
  30.     指定したIDのイベントが円運動をするようになります。
  31.     dist には半径を指定してください、省略すると止まります。
  32.     移動するのはスプライトだけなので、イベントの位置は変化しません。
  33.   
  34.   set_cycle(event_id, cycle)
  35.     指定したIDのイベントのアニメーション周期を cycle に変更します、
  36.     対象となるのは拡大縮小アニメ、ふらふらアニメ、円運動アニメの3つです。
  37.     初期値は 256

  38.   event_id に 0 を指定すると実行中のイベント自身が対象となり、
  39.   -1 を指定すればプレイヤーが対象となります。

  40. スクリプトコマンドを使う方法以外に、イベント名や注釈コマンドを使って
  41. 設定することもできます。以下の文字列をイベント名か注釈に加えてください。
  42.   <zm 1.5, 2.0> … 扩大,横1.5倍纵2倍
  43.   <an 45> … 倾斜,幅度45
  44.   <za>   … 动态扩大缩小
  45.   <sa 30> … 左右摇摆、幅度30
  46.   <ca 16> … 圆周率运动,半径16
  47.   <cy 128> … アニメーション周期の設定、1周128フレーム
  48.   
  49.   注釈コマンドを使う場合は必ずイベント実行内容の一番上で設定してください。
  50.   
  51.   
  52. === 注意 ===
  53.  ・設定したパラメータはイベントページの変更などによって初期化されます、
  54.   イベントコマンドとイベント名、注釈をうまく使い分けてください。


  55. 2011.12.21  Ver1.01
  56.   ・並列処理で event_id に 0 を指定するとエラーが発生する不具合を修正
  57.   
  58. 2011.12.15 Ver1.0
  59.   公開
  60.   
  61. =end

  62. #==============================================================================
  63. # ■ Game_Character
  64. #==============================================================================
  65. class Game_Character
  66.   #--------------------------------------------------------------------------
  67.   # ● 公開インスタンス変数
  68.   #--------------------------------------------------------------------------
  69.   attr_accessor :zoom_x                   # x方向の拡大率
  70.   attr_accessor :zoom_y                   # y方向の拡大率
  71.   attr_accessor :angle                    # 回転角度
  72.   attr_accessor :zoom_anime               # ズームアニメフラグ
  73.   attr_accessor :swing_anime              # ふらふらフラグ
  74.   attr_accessor :circle_anime             # 円運動フラグ
  75.   attr_accessor :ex_count_max             # アニメーション周期
  76.   #--------------------------------------------------------------------------
  77.   # ● 公開メンバ変数の初期化
  78.   #--------------------------------------------------------------------------
  79.   alias tmsprex_game_character_init_public_members init_public_members
  80.   def init_public_members
  81.     tmsprex_game_character_init_public_members
  82.     clear_ex_param
  83.   end
  84.   #--------------------------------------------------------------------------
  85.   # ○ キャラクター拡張用パラメータの初期化
  86.   #--------------------------------------------------------------------------
  87.   def clear_ex_param
  88.     @zoom_x = 1.0
  89.     @zoom_y = 1.0
  90.     [url=home.php?mod=space&uid=124954]@Angle[/url] = 0
  91.     @zoom_anime = false
  92.     @swing_anime = nil
  93.     @circle_anime = nil
  94.     @ex_count_max = 256
  95.   end
  96. end

  97. #==============================================================================
  98. # ■ Game_Event
  99. #==============================================================================
  100. class Game_Event < Game_Character
  101.   #--------------------------------------------------------------------------
  102.   # ● イベントページの設定をセットアップ
  103.   #--------------------------------------------------------------------------
  104.   alias tmsprex_game_event_setup_page_settings setup_page_settings
  105.   def setup_page_settings
  106.     tmsprex_game_event_setup_page_settings
  107.     clear_ex_param
  108.     if @list
  109.       if /<zm\s+(\d+(?:\.\d+)?)\s*\,\s*(\d+(?:\.\d+)?)>/i =~ @event.name
  110.         @zoom_x, @zoom_y = $1.to_f, $2.to_f
  111.       end
  112.       [url=home.php?mod=space&uid=124954]@Angle[/url] = $1.to_i if /<an\s*(\d+)>/i =~ @event.name
  113.       @zoom_anime = true if /<za>/i =~ @event.name
  114.       @swing_anime = $1.to_i if /<sa\s+(\d+)>/i =~ @event.name
  115.       @circle_anime = $1.to_i if /<ca\s+(\d+)>/i =~ @event.name
  116.       @ex_count_max = $1.to_i if /<cy\s+(\d+)>/i =~ @event.name
  117.       @list.each do |list|
  118.         if list.code == 108 || list.code == 408
  119.           text = list.parameters[0]
  120.           if /<zm\s+(\d+(?:\.\d+)?)\s*\,\s*(\d+(?:\.\d+)?)>/i =~ text
  121.             @zoom_x, @zoom_y = $1.to_f, $2.to_f
  122.           end
  123.           [url=home.php?mod=space&uid=124954]@Angle[/url] = $1.to_i if /<an\s*(\d+)>/i =~ text
  124.           @zoom_anime = true if /<za>/i =~ text
  125.           @swing_anime = $1.to_i if /<sa\s+(\d+)>/i =~ text
  126.           @circle_anime = $1.to_i if /<ca\s+(\d+)>/i =~ text
  127.           @ex_count_max = $1.to_i if /<cy\s+(\d+)>/i =~ text
  128.         else
  129.           break
  130.         end
  131.       end
  132.     end
  133.   end
  134. end

  135. #==============================================================================
  136. # ■ Sprite_Character
  137. #==============================================================================
  138. class Sprite_Character < Sprite_Base
  139.   #--------------------------------------------------------------------------
  140.   # ● オブジェクト初期化
  141.   #     viewport  : ビューポート
  142.   #     character : キャラクター (Game_Character)
  143.   #--------------------------------------------------------------------------
  144.   alias tmsprex_sprite_character_initialize initialize
  145.   def initialize(viewport, character = nil)
  146.     @ex_count = 0                         # 特殊演出用のカウンタ
  147.     tmsprex_sprite_character_initialize(viewport, character)
  148.   end
  149.   #--------------------------------------------------------------------------
  150.   # ● フレーム更新
  151.   #--------------------------------------------------------------------------
  152.   alias tmsprex_sprite_character_update update
  153.   def update
  154.     tmsprex_sprite_character_update
  155.     @ex_count = (@ex_count + 1) % @character.ex_count_max
  156.     n = @character.ex_count_max / 2
  157.     if @character.zoom_anime              # ズームアニメの更新
  158.       self.zoom_x = Math.sin(Math::PI * @ex_count / n) * 0.5 + 1.5
  159.       self.zoom_y = self.zoom_x
  160.     else
  161.       self.zoom_x, self.zoom_y = @character.zoom_x, @character.zoom_y
  162.     end
  163.     if @character.swing_anime             # ふらふら状態の更新
  164.       self.angle = Math.sin(Math::PI * @ex_count / n) * @character.swing_anime
  165.     else
  166.       self.angle = @character.angle
  167.     end
  168.     if @character.circle_anime            # 円運動状態の更新
  169.       a = Math::PI * @ex_count / n
  170.       self.x += Math.sin(a) * @character.circle_anime
  171.       self.y += Math.cos(a) * @character.circle_anime
  172.     end
  173.   end
  174. end

  175. #==============================================================================
  176. # ■ Game_Interpreter
  177. #==============================================================================
  178. class Game_Interpreter
  179.   #--------------------------------------------------------------------------
  180.   # ○ キャラクタースプライトの回転角度を変更
  181.   #--------------------------------------------------------------------------
  182.   def set_angle(id, n = 0)
  183.     target = get_character(id)
  184.     target.angle = n if target
  185.   end
  186.   #--------------------------------------------------------------------------
  187.   # ○ キャラクタースプライトの拡大率を変更
  188.   #--------------------------------------------------------------------------
  189.   def set_zoom(id, zoom_x, zoom_y = nil)
  190.     target = get_character(id)
  191.     return unless target
  192.     zoom_y ||= zoom_x
  193.     target.zoom_x, target.zoom_y = zoom_x, zoom_y
  194.   end
  195.   #--------------------------------------------------------------------------
  196.   # ○ キャラクタースプライトのズームアニメを変更
  197.   #--------------------------------------------------------------------------
  198.   def set_zoom_anime(id, flag = true)
  199.     target = get_character(id)
  200.     target.zoom_anime = flag if target
  201.   end
  202.   #--------------------------------------------------------------------------
  203.   # ○ キャラクタースプライトのふらふら状態を変更
  204.   #--------------------------------------------------------------------------
  205.   def set_swing_anime(id, n = nil)
  206.     target = get_character(id)
  207.     return unless target
  208.     target.swing_anime = n
  209.     target.angle = 0 unless n
  210.   end
  211.   #--------------------------------------------------------------------------
  212.   # ○ キャラクタースプライトの円運動状態を変更
  213.   #--------------------------------------------------------------------------
  214.   def set_circle_anime(id, n = nil)
  215.     target = get_character(id)
  216.     target.circle_anime = n if target
  217.   end
  218.   #--------------------------------------------------------------------------
  219.   # ○ キャラクタースプライトの拡張アニメーション周期を変更
  220.   #--------------------------------------------------------------------------
  221.   def set_cycle(id, n = 256)
  222.     target = get_character(id)
  223.     target.ex_count_max = n if target
  224.   end
  225. end
复制代码

评分

参与人数 1星屑 +150 收起 理由
Sion + 150 感谢帮忙

查看全部评分

莺莺飞蛾夜灯寻,小路迷途飞满庭;
追爱明光夜夜怜,不觉天明为谁晴。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
51 小时
注册时间
2014-3-18
帖子
13
4
 楼主| 发表于 2014-4-1 21:02:39 | 只看该作者
本帖最后由 流着水的你の眼 于 2014-4-1 21:05 编辑

可能是我没表达清楚,如图中间的是3头身的

但是3头身的人物大一点,与VA中的默认的地图元件不陪套(人物比门还大)


如图 人物比告示牌还高,不陪套


是不是表示VA中的默认的地图元件不好用,得找大一号的素材啊。
回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

职业の水客

梦石
0
星屑
13655
在线时间
7134 小时
注册时间
2010-6-16
帖子
3487

开拓者

3
发表于 2014-4-1 12:01:56 | 只看该作者
XP转VX格式的人物行走图应该可以做到
45°的话就需要准备好45°的地图材料 比如梦幻西游 参考梦幻群侠传
一个看图的地方
群爆炸重建后状态:论坛老人最多(只剩下了活跃的老人),技术力很强(依旧不变)的编程灌水群:901540785
专门讨论RM相关的Q群:56875149
PS:第一个群不是专门讨论RM的,第二个才是哦。
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21484
在线时间
9389 小时
注册时间
2012-6-19
帖子
7114

开拓者短篇九导演组冠军

2
发表于 2014-4-1 11:58:32 | 只看该作者
1.可以,虽然在编辑器中消失异常,实际运行游戏时可以正常显示
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-9-25 07:15

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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