Project1

标题: 【请求】想请高人们写个人物选择的脚本(内详) [打印本页]

作者: 阿普莉可    时间: 2018-3-6 23:51
标题: 【请求】想请高人们写个人物选择的脚本(内详)
前言:
新人一枚,但接触Rmxp也有一点,想做一个游戏。但需要一个人物选择的脚本。
论坛上并没有发现好的脚本合适。所以自己开个脑洞来策划一下大致的脚本。
当然,写脚本是一件苦差事,有需求的话,就是要报酬的朋友。
请短消息留言给我。我会尽力满足的,虽然还是学生党可能给不多吧。

内容:

以上P的图就是需要实现的效果。

具体描述:
1.基本功能:选中的角色,按确定键后,返回地图,并会加入到游戏队伍中去。

2.效果:
①背景:进入该场景时,显示Background1、Background2的背景名字的背景图。
即上图中的心形背景和少女祈祷中;

②Bgm:进入该场景时,播放音乐文件中的文件bgm,结束后淡出该音乐;

③立绘:选择指定的人物会显示指定人物的立绘,即Characters_x和Characters_big_x的文件名。
可以直接显示,也可以做成从屏幕外移动到屏幕内的效果;

④名字及文本:即图中的人物名字和种族信息等等。效果为选中某个人物后,名字从屏幕外的左边移动到屏幕中的指定坐标,
文本从屏幕外的右边移动到屏幕中的指定坐标。原之前选中的人物名字和文本则移动回屏幕外。

⑤magic:右下角的魔法阵图片,在场景中是不断的刷新旋转的;

⑥card卡片:重点部分。

1.choose:红色框为当前选中的人物卡片,选中的人物的卡片是1倍大小的。
其他未被选中的卡片大小,均为x,y的0.8倍缩放。

2.卡片的旋转,在选中框左边的卡片,以逆时针旋转的。单位为45度。
如图:红色框左边的第一张卡片是逆时针旋转45度,第二张卡片就是90度了。
在选中框右边的卡片,以顺时针旋转的。单位为45度。

3.卡片的索引,默认进入场景时,选中的是一号人物的卡片。以红色选中框为基准。
左边的卡片为索引@index - 1 右边的卡片为索引@index + 1
按左键时索引@index -= 1,按右键时索引@index += 1,

简单的说,举个例子。一共6个选项。选中1号卡片人物的时候,红框左边的第一张卡片为6号卡片,红框左边的第二张卡片为5号卡片;
而红框右边的第一张卡片为2号卡片,红框右边的第二张卡片为3号卡片;
再是按左键的时候,红框选中的卡片就是6号人物的卡片了。若按右键的时候,红框选中的卡片就是2号人物的卡片了。

4.卡片的移动效果,左右键可移动选择卡片人物,卡片是用移动的效果。
就是从红框外移出与在红框外移进去选中的一些移动效果。另外,红色框是静止不动的。

5.随机卡片,随机加入某个角色,角色是以场景中能选中的范围中随机选中一个。

结语:
也不知道描述得怎么样。不知道大家理解得多少。
不过估计没有人会做吧。
但还是把范例和素材放上来吧。
Scene_Choose.zip (1.25 MB, 下载次数: 107)
素材.zip (1.83 MB, 下载次数: 91)














作者: 灯笼菜刀王    时间: 2018-3-7 01:37
你要的功能基本都是处理图片, 有耐心话, 用事件的"显示图片" 就能做到的.

(旋转菜单效果可以参考"第一届title大赛冠军作品-胸魔剑的<史莱姆>", 纯事件做法, 表现上和楼主要的效果基本一致, 就是不知道现在还能不能下载)

脚本做法也是一样的,实现不难, 纯粹是各种调坐标的体力活.......

不过嘛,XP自带的旋转图片效果比较生硬, 追求完美的话,可以搜索下以前高手们对此算法的改进


作者: 2256538860    时间: 2018-3-7 07:43
本帖最后由 2256538860 于 2018-3-7 07:45 编辑

注册日期3月6号···啦啦啦啦
------------------------------------
真的超级新人啊,有没有兴趣多看看一些教程呢
作者: 白魔导师宝儿    时间: 2018-3-7 08:55
记得论坛里有大概的脚本,好像是va的。移植的话可能可以实现
作者: RyanBern    时间: 2018-3-7 09:56
本帖最后由 RyanBern 于 2018-3-7 21:50 编辑

看到这个定制单子表示和我五年前做的一个单子出奇地像,为此还跟坛友闹了点不愉快,也不知道那个下单的人最后用了没有。

出于好奇就下载了下素材,发现真的很像。有意向接单。楼主可以通过站内私聊的方式将联系方式告诉我。

PS:五年前那单的成品图




PPS:已完成,成品:

作者: WantMy蕙    时间: 2018-3-7 12:37
楼主可以自己尝试用显示图片+移动图片做做看哦,会有奇效,实在不会就看看柳大的黑暗圣剑传说的菜单制作教程???
作者: 阿普莉可    时间: 2018-3-7 19:54
RyanBern 发表于 2018-3-7 09:56
看到这个定制单子表示和我五年前做的一个单子出奇地像,为此还跟坛友闹了点不愉快,也不知道那个下单的人最 ...

好厉害。原来前辈之前有做过类似的脚本?
不过看效果,还跟我想要的脚本多少有点出入。
如果前辈能帮忙。那就麻烦了。这是我的联系方式。
QQ:2943361754
因为没有权限所以只能回复说明了。
作者: 文雅夕露    时间: 2018-3-7 22:10
本帖最后由 文雅夕露 于 2018-3-7 22:13 编辑

刚刚看到帖子,就写了几句...
果然水平太差了...
话说立绘显示不出来是什么回事?
明明z坐标没有问题...

  1. module Actor
  2.   ANGLE = 10
  3. end
  4. #==============================================================================
  5. # ■ Scene_Select
  6. #------------------------------------------------------------------------------
  7. class Scene_Select
  8.   include Actor
  9.   #--------------------------------------------------------------------------
  10.   # ● 初始化对像
  11.   #--------------------------------------------------------------------------
  12.   def initialize(select_index = 0)
  13.     @select_index = select_index #选择的索引
  14.     @card = [] #卡片数组
  15.     @phase = 0
  16.     @select_phase = 1
  17.   end
  18.   #--------------------------------------------------------------------------
  19.   # ● 主处理
  20.   #--------------------------------------------------------------------------
  21.   def main
  22.   # 演奏 BGM
  23.   Audio.bgm_play("Audio/BGM/bgm",80,100)
  24.   #生成各种图像精灵#
  25.   #立绘图片#
  26.   @characters = Sprite.new
  27.   @characters.bitmap = RPG::Cache.picture("Characters_#{@select_index + 1}")
  28.   @characters_big = Sprite.new
  29.   @characters_big.bitmap = RPG::Cache.picture("Characters_big_#{@select_index + 1}")
  30.   @characters.x = 0
  31.   @characters.y = 0
  32.   @characters.z = 999
  33.   @characters_big.x = 0
  34.   @characters_big.y = 0
  35.   @characters_big.z = 888
  36.   #背景#
  37.   @background = Sprite.new
  38.   @background.bitmap = RPG::Cache.picture("Background1")
  39.   @background.z = 0
  40.   @background2 = Sprite.new
  41.   @background2.bitmap = RPG::Cache.picture("Background2")
  42.   @background2.z = 999
  43.   #魔法阵图片#
  44.   @magic = Sprite.new
  45.   @magic.bitmap = RPG::Cache.picture("magic")
  46.   @magic.x = 540
  47.   @magic.y = 480
  48.   @magic.z = 100
  49.   @magic.ox = @magic.bitmap.width / 2
  50.   @magic.oy = @magic.bitmap.height / 2
  51.   #名字跟文字描绘
  52.   @characters_name = Sprite.new
  53.   @characters.bitmap = RPG::Cache.picture("Characters_name_#{@select_index + 1}")
  54.   @characters_text = Sprite.new
  55.   @characters_text.bitmap = RPG::Cache.picture("Characters_text#{@select_index + 1}")
  56.   @characters_name.x = 0
  57.   @characters_name.y = 0
  58.   @characters_name.z = 1000
  59.   @characters_text.x = 0
  60.   @characters_text.y = 0
  61.   @characters_text.z = 1001
  62.   #卡片#  #暂时不写,没头绪。
  63.   @card = Sprite.new
  64.   @card.bitmap =  RPG::Cache.picture("Characters_name_#{@select_index + 1}")
  65.   @card.x = 500
  66.   @card.y = 240
  67.   @card.z = 9996
  68.   #choose图#
  69.   @choose = Sprite.new
  70.   @choose.bitmap = RPG::Cache.picture("choose")
  71.   @choose.x = 500
  72.   @choose.y = 240
  73.   @choose.z = 9998
  74.   Graphics.transition(60)
  75.     # 主循环
  76.     loop do
  77.       @magic.angle -= ANGLE
  78.       Graphics.update
  79.       Input.update
  80.       if $scene != self
  81.         break
  82.       end
  83.     end
  84.     # 准备过渡
  85.     Graphics.freeze
  86.     # 释放
  87.     @background.dispose
  88.     @background.bitmap.dispose
  89.     @background2.dispose
  90.     @background2.bitmap.dispose
  91.     @magic.dispose
  92.     @magic.bitmap.dispose
  93.     @characters.dispose
  94.     @characters.bitmap.dispose
  95.     @characters_big.dispose
  96.     @characters_big.bitmap.dispose
  97.     @card.dispose
  98.     @card.bitmap.dispose
  99.     @choose.dispose
  100.     @choose.bitmap.dispos
  101.     # 过渡
  102.     Graphics.transition(60)
  103.     Graphics.freeze
  104.   end
  105. end
复制代码

因为还有很多自己没搞懂的地方就这样吧。
作者: ikki    时间: 2018-3-24 15:31
类似这样的么?




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1