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

Project1

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

[原创发布] 在屏幕坐标显示动画

[复制链接]

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

跳转到指定楼层
1
发表于 2018-10-6 14:38:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 yang1zhi 于 2020-11-5 09:31 编辑

me_xy_animation.zip (1.06 KB, 下载次数: 217)

就是个垃圾而已。

用默认脚本改的。

可在屏幕的任何坐标显示‘动画’

//在事件中的脚本里,写上$gameParty.XY_animation(id,x,y)
//也可以自己在指定的Scene里面调用createXYanimationWindow来实现


更新---------------------------------------------------------------------------------------------------------------
//SceneManager._scene.END_XYanimation()   可结束动画播放

YZ_xy_animation.zip (1.13 KB, 下载次数: 162)

评分

参与人数 2+2 收起 理由
wabcmcc + 1 事件頁也可以"顯示動畫".
白嫩白嫩的 + 1 精品文章

查看全部评分

Lv1.梦旅人

梦石
0
星屑
77
在线时间
7 小时
注册时间
2018-9-20
帖子
7
2
发表于 2018-11-1 21:07:59 | 只看该作者
请问在公共事件中可以调用这个吗?
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
77
在线时间
7 小时
注册时间
2018-9-20
帖子
7
3
发表于 2018-11-1 21:12:43 | 只看该作者
谢谢,我试了一下,正好能用上。

评分

参与人数 1+1 收起 理由
yang1zhi + 1 塞糖

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3077
在线时间
337 小时
注册时间
2018-3-28
帖子
203
4
发表于 2019-8-17 11:56:31 | 只看该作者
厉害了大佬,解决了燃眉之急, 不过还是有个小问题想请教下,
这个动画 是否能更改 Z轴层级  因为我使用了其他显示图片的插件  现在这个动画显示在了图片下面 我想把这个动画 弄到图片上面去
我那个插件是用 zIndex = 1000 来控制层级的
期待大佬的解答 |
最后还是非常感谢大佬 这个小插件 非常有用的
用mv做了两款游戏,有兴趣的可以瞧一瞧:
《有毛病》--- 休闲、探索、策略、剧情、恐怖 都有那么一些,就是没有战斗。挺骚挺有意思的一个游戏。
steam链接:点击这里


《留离》--- 探索、高自由度、ARPG、战斗,就是没有啥剧情。
steam链接:点击这里
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

5
 楼主| 发表于 2019-8-17 14:42:30 | 只看该作者
wr282828 发表于 2019-8-17 11:56
厉害了大佬,解决了燃眉之急, 不过还是有个小问题想请教下,
这个动画 是否能更改 Z轴层级  因为我使用了 ...

不好办。JS的Z轴是根据先来后到来决定上下的。我不知道你那个什么原理。我这个是使用指令后才开始添加的。应该是最后到达的。

点评

嗯嗯 我再看看 感谢感谢  发表于 2019-8-17 20:00
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1912
在线时间
1554 小时
注册时间
2013-4-13
帖子
917
6
发表于 2019-8-17 16:08:25 | 只看该作者
wr282828 发表于 2019-8-17 11:56
厉害了大佬,解决了燃眉之急, 不过还是有个小问题想请教下,
这个动画 是否能更改 Z轴层级  因为我使用了 ...

深度管理需要对children列表进行排序, 实现方式并不统一, 你可以把你的插件发过来么, 我研究一下该怎么弄

点评

用的是 div的 style.zIndex 控制层级  发表于 2019-8-17 20:56
我直接把插件代码贴上了  发表于 2019-8-17 20:55
我用的是 下楼 那个插件  发表于 2019-8-17 19:59
夏普的道具店

塞露提亚-道具屋的经营妙方同人作品
发布帖:点击这里
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3077
在线时间
337 小时
注册时间
2018-3-28
帖子
203
7
发表于 2019-8-17 19:59:10 | 只看该作者
AXY_Gif.rar (3.01 KB, 下载次数: 115)
我用的是这个显示图片的插件

点评

我下不来, chrome说有病毒  发表于 2019-8-17 20:08
用mv做了两款游戏,有兴趣的可以瞧一瞧:
《有毛病》--- 休闲、探索、策略、剧情、恐怖 都有那么一些,就是没有战斗。挺骚挺有意思的一个游戏。
steam链接:点击这里


《留离》--- 探索、高自由度、ARPG、战斗,就是没有啥剧情。
steam链接:点击这里
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3077
在线时间
337 小时
注册时间
2018-3-28
帖子
203
8
发表于 2019-8-17 20:54:58 | 只看该作者
JAVASCRIPT 代码复制
  1. //=============================================================================
  2. // XueYu Plugins - Gif
  3. // AXY_Gif.js
  4. // Version: 1.0
  5. // License: BSD
  6. //=============================================================================
  7. /*:
  8.  * @plugindesc v1.00 动图显示 This plugin show gif, jpg, and many formats img from website or local.
  9.  * @author XueYu Plugins
  10.  *
  11.  * @param 锚点
  12.  * @param Anchor
  13.  * @desc The Img Anchor point. topleft/center
  14.  * @default center
  15.  *
  16.  * @param X
  17.  * @desc The x position of img. this is a eval param, so you can use Variables.
  18.  * img的x位置。这是一个eval参数,所以可以使用变量
  19.  * @default Graphics.width/2
  20.  *
  21.  * @param Y
  22.  * @desc The y position of img. this is a eval param, so you can use Variables.
  23.  * @default Graphics.height/2-90
  24.  *
  25.  * @param Width
  26.  * @desc The img width with % percent or px. img宽度的百分比或px。
  27.  * @default 100%
  28.  *
  29.  * @param Height
  30.  * @desc The img height with % percent or px.
  31.  * @default 100%
  32.  *
  33.  * @param opacity
  34.  * @desc The css opacity. 0-1 css的不透明度。0 - 1
  35.  * @default 1
  36.  *
  37.  * @param zIndex
  38.  * @desc The css zIndex.
  39.  * @default 10000
  40.  *
  41.  * @param 改变(一般用于旋转)
  42.  * @param transform
  43.  * @desc 可用脚本 $gameTemp._DXXtransform = "rotate(0deg)"; 修改。
  44.  * @default rotate(0deg)
  45.  *
  46.  * @param 延时
  47.  * @param delay
  48.  * @desc The Img life time. set to 0 to disable. unit is microseconds.
  49.  * Img的使用寿命。设置为0禁用。单位是微秒。
  50.  * @default 0
  51.  *
  52.  * @param path
  53.  * @desc The gif file you save.
  54.  * @default img/gif/
  55.  *
  56.  * @help
  57.  * Introduction
  58.  * This plugin support rmmv show gif, jpg, and many formats img from website or local.
  59.  * Easy to use and powerful.
  60.  *
  61.  * Example:
  62.  * show:
  63.  * AXY_Gif.show({filename:'1.gif'});
  64.  * AXY_Gif.show({filename:'1.jpg'});
  65.  * AXY_Gif.show({filename:'url=img/faces/Actor1.png'});
  66.  * AXY_Gif.show({filename:'1.gif',id:2});
  67.  * AXY_Gif.show({id:3,filename:'1.gif',delay:3000});
  68.  * AXY_Gif.show({x:0, y:0, align:'topleft', filename:'url=http://www.yourdomain.com/gif.jpg'});
  69.  * AXY_Gif.show({x:0, y:0, align:'topleft', filename:'url=http://www.yourdomain.com/gif.gif'});
  70.  * all args with default:
  71.  * AXY_Gif.show({x:'Graphics.width/2', y:'Graphics.height/2-90', align:'center', filename:'1.gif',id:1,delay:0,width:'100%',height:'100%',opacity:1});
  72.  *
  73.  * move:
  74.  * AXY_Gif.move(id,x,y);
  75.  *
  76.  * remove with id:
  77.  * AXY_Gif.remove(1);
  78.  * AXY_Gif.remove(2);
  79.  * remove all:
  80.  * AXY_Gif.removeall();
  81.  *
  82.  *
  83.  * showtext
  84.  * AXY_Gif.showtext({x:500, y:500, id:50, content:'你好吗', color:'#000000', size:10});
  85.  *
  86.  * movetext
  87.  * AXY_Gif.movetext(id,x,y);
  88.  */
  89.  
  90. // Imported
  91. var Imported = Imported || {};
  92. Imported.AXY_Gif = true;
  93.  
  94. // Parameter Variables
  95. var AXY = AXY || {};
  96. AXY.Gif = AXY.Gif || {};
  97.  
  98. AXY.Gif.Parameters = PluginManager.parameters('AXY_Gif');
  99. AXY.Gif.Param = AXY.Gif.Param || {};
  100.  
  101. //
  102. AXY.Gif.Param.Anchor = String(AXY.Gif.Parameters['Anchor']);
  103. AXY.Gif.Param.X = String(AXY.Gif.Parameters['X']);
  104. AXY.Gif.Param.Y = String(AXY.Gif.Parameters['Y']);
  105. AXY.Gif.Param.Width = String(AXY.Gif.Parameters['Width']);
  106. AXY.Gif.Param.Height = String(AXY.Gif.Parameters['Height']);
  107. AXY.Gif.Param.opacity = parseFloat(AXY.Gif.Parameters['opacity']);
  108. AXY.Gif.Param.zIndex = parseInt(AXY.Gif.Parameters['zIndex']);
  109. AXY.Gif.Param.delay = parseInt(AXY.Gif.Parameters['delay']);
  110. AXY.Gif.Param.path = String(AXY.Gif.Parameters['path']);
  111.  
  112. AXY.Gif.Param.transform = String(AXY.Gif.Parameters['transform']);
  113.  
  114. //main
  115. //gif
  116. AXY_Gif = {
  117.         show: function () {
  118.                 //console.log(arguments[3]);
  119.                 var AXYGifArgs         =         arguments[0] ? arguments[0] : {};
  120.                 var filename         =         AXYGifArgs['filename'] ? AXYGifArgs['filename'] : "";
  121.                 var delay                 =         AXYGifArgs['delay'] ? AXYGifArgs['delay'] : AXY.Gif.Param.delay;
  122.                 var id                        =         AXYGifArgs['id'] ? AXYGifArgs['id'] : 1;
  123.                 var x                        =         AXYGifArgs['x'] != undefined ? AXYGifArgs['x'] : eval(AXY.Gif.Param.X);
  124.                 var y                        =         AXYGifArgs['y'] != undefined ? AXYGifArgs['y'] : eval(AXY.Gif.Param.Y);
  125.                 var width                =         AXYGifArgs['width'] ? AXYGifArgs['width'] : AXY.Gif.Param.Width;
  126.                 var height                =         AXYGifArgs['height'] ? AXYGifArgs['height'] : AXY.Gif.Param.Height;
  127.                 var opacity                =         AXYGifArgs['opacity'] ? AXYGifArgs['opacity'] : AXY.Gif.Param.opacity;
  128.                 var align                =         AXYGifArgs['align'] ? AXYGifArgs['align'] : AXY.Gif.Param.Anchor;
  129.                 var transform   =    $gameTemp._DXXtransform ? $gameTemp._DXXtransform : AXY.Gif.Param.transform;
  130.  
  131.  
  132.                 if(filename.indexOf('url=') != -1){
  133.                         filename = filename.replace('url=', '');
  134.                 }
  135.                 else{
  136.                         filename = AXY.Gif.Param.path + filename;
  137.                 }
  138.  
  139.                 var AXYGifEntity;
  140.                 var AXYGifTemplate = '<div id="AXYGif'+id+'" class="AXYGif" width=1600 height=900 style="visibility:hidden;position:fixed;left:0px;top:0px;transform:'+transform+';z-index:'+
  141.                 AXY.Gif.Param.zIndex+';"><img src="'+filename+'" style="width:'+width+';height:'+height+';opacity:'+opacity+';" /></div>';
  142.  
  143.                 AXYGifEntity = $('body').append(AXYGifTemplate);
  144.  
  145.                 $("#AXYGif"+id+" img")[0].onload = function(){
  146.                         if(align == 'center'){
  147.                                 if(width.indexOf("px") != -1){
  148.                                         var widthpx = width;
  149.                                         var widthint = parseFloat(width);
  150.                                 }
  151.                                 else{
  152.                                         var widthint = $("#AXYGif"+id+" img")[0].naturalWidth*parseFloat(width)/100;
  153.                                         if(widthint == 0){console.log("必须提前加载图片 否则naturalWidth为0");}
  154.                                         var Wadj = AXY_Gif.AdjustWidth(widthint);
  155.                                         var widthpx = Wadj+'px';
  156.                                 }
  157.                                 if(height.indexOf("px") != -1){
  158.                                         var heightpx = height;
  159.                                         var heightint = parseFloat(height);
  160.                                 }
  161.                                 else{
  162.                                         var heightint = $("#AXYGif"+id+" img")[0].naturalHeight*parseFloat(height)/100;
  163.                                         var Hadj = AXY_Gif.AdjustHeight(heightint);
  164.                                         var heightpx = Hadj+'px';
  165.                                 }
  166.  
  167.                                 var imgx = widthint/2;
  168.                                 var imgy = heightint/2;
  169.                                 var divx = x-imgx;//*parseFloat(width)/100;                               
  170.                                 var divy = y-imgy;//*parseFloat(height)/100;
  171.  
  172.                                 divx = AXY_Gif.AdjustX(divx);
  173.                                 divy = AXY_Gif.AdjustY(divy);
  174.  
  175.                 // console.log("x:" + divx + " y:" + divy);
  176.                                 $("#AXYGif"+id+" img").css({'width':widthpx,'height':heightpx});
  177.                                 $("#AXYGif"+id).css({left:divx+'px', top:divy+'px', visibility:'visible'});
  178.  
  179.                         }
  180.                         else{
  181.                         var wint = $("#AXYGif"+id+" img")[0].naturalWidth * parseFloat(width)/100;                       
  182.                         var hint = $("#AXYGif"+id+" img")[0].naturalHeight * parseFloat(height)/100;
  183.                         if(wint == 0){console.log("必须提前加载图片 否则naturalWidth为0");}
  184.                         // console.log("w:" + wint + " h:" + hint);
  185.                         var w = AXY_Gif.AdjustWidth(wint) + 'px';
  186.                         var h = AXY_Gif.AdjustHeight(hint) + 'px';
  187.                         x = AXY_Gif.AdjustX(x);
  188.                         y = AXY_Gif.AdjustY(y);
  189.                         $("#AXYGif"+id+" img").css({'width':w,'height':h});
  190.                         $("#AXYGif"+id).css({left:x, top:y, visibility:'visible'});
  191.                         // console.log($("#AXYGif"+id));
  192.                     }
  193.                 }
  194.                 // console.log($("#AXYGif"+id));
  195.                 if(delay>=1){
  196.                         setTimeout(function()
  197.                         {
  198.                                 $('#AXYGif'+id).remove();
  199.                         }, delay);
  200.                 }
  201.         },
  202.         remove: function () {
  203.                 var id                        =         arguments[0] ? arguments[0] : 1;
  204.                 // console.log($('#AXYGif'+id));
  205.                 // console.log($('#AXYGif'+id).stop());
  206.                 $('#AXYGif'+id).stop().animate({"opacity": "0"},500, function() {
  207.                         $(this).remove();
  208.                 });
  209.         },
  210.         removeall: function () {
  211.                 $('.AXYGif').stop().animate({"opacity": "0"}, 500, function() {
  212.                         $(this).remove();
  213.                 });
  214.         },
  215.         move: function () {
  216.                 var id        = arguments[0] ? arguments[0] : 1;
  217.         var x1 = arguments[1] ? arguments[1] : 1;   
  218.         var y1 = arguments[2] ? arguments[2] : 1;
  219.  
  220.                 x1 = AXY_Gif.AdjustX(x1);
  221.                 y1 = AXY_Gif.AdjustY(y1);
  222.  
  223.                 x1 = x1 + "px";
  224.                 y1 = y1 + "px";
  225.  
  226.                 $('#AXYGif'+id).animate({left: x1, top: y1},"fast");
  227.         },
  228.         // removeall: function () {
  229.         //         $('.AXYGif').stop().animate({"width": "0","height": "0"}, "normal", function() {
  230.         //                 $(this).remove();
  231.         //         });
  232.         // }
  233.         showtext: function () {
  234.                 var AXYGifArgs         =         arguments[0] ? arguments[0] : {};
  235.  
  236.                 var delay                 =         AXYGifArgs['delay'] ? AXYGifArgs['delay'] : AXY.Gif.Param.delay;
  237.                 var id                        =         AXYGifArgs['id'] ? AXYGifArgs['id'] : 1;
  238.                 var x                        =         AXYGifArgs['x'] != undefined ? AXYGifArgs['x'] : 0;
  239.                 var y                        =         AXYGifArgs['y'] != undefined ? AXYGifArgs['y'] : 0;
  240.                 var opacity                =         AXYGifArgs['opacity'] ? AXYGifArgs['opacity'] : AXY.Gif.Param.opacity;
  241.                 var content                =         AXYGifArgs['content'] ? AXYGifArgs['content'] : 0;
  242.                 var color                =         AXYGifArgs['color'] ? AXYGifArgs['color'] : 'white';
  243.                 var size                =         AXYGifArgs['size'] ? AXYGifArgs['size'] : 5;
  244.                 var zIndex                =         AXYGifArgs['zIndex'] ? AXYGifArgs['zIndex'] : 10001;
  245.  
  246.                 var AXYGifEntity;
  247.  
  248.                 var AXYGifTemplate = '<div id="AXYGiftext'+id+'" class="AXYGiftext" style="visibility:hidden;position:fixed;left:0px;top:0px;z-index:'+zIndex+';font-weight: 700;"><p><font size="'+size+'" face="arial" color="'+color+'">'+content+'</font></p></div>';
  249.  
  250.                 AXYGifEntity = $('body').append(AXYGifTemplate);
  251.  
  252.                 x = AXY_Gif.AdjustX(x);
  253.                 y = AXY_Gif.AdjustY(y);
  254.  
  255.                 $("#AXYGiftext"+id).css({left:x, top:y, visibility:'visible'});
  256.                 // console.log($("#AXYGif"+id));
  257.                 if(delay>=1){
  258.                         setTimeout(function()
  259.                         {
  260.                                 $('#AXYGiftext'+id).remove();
  261.                         }, delay);
  262.                 }
  263.         },
  264.         removetext: function () {
  265.                 var id = arguments[0] ? arguments[0] : 1;
  266.                 $('#AXYGiftext'+id).stop().animate({"opacity": "0"},10, function() {
  267.                         $(this).remove();
  268.                 });
  269.         },
  270.         movetext: function () {
  271.                 var id        = arguments[0] ? arguments[0] : 1;
  272.         var x1 = arguments[1] ? arguments[1] : 1;        
  273.         var y1 = arguments[2] ? arguments[2] : 1;
  274.  
  275.                 x1 = AXY_Gif.AdjustX(x1);
  276.                 y1 = AXY_Gif.AdjustY(y1);
  277.         x1 = x1 + "px";
  278.         y1 = y1 + "px";
  279.                 $('#AXYGiftext'+id).animate({left: x1, top: y1},300);
  280.         },
  281.         removealltext: function () {
  282.                 $('.AXYGiftext').stop().animate({"opacity": "0"}, "fast", function() {
  283.                         $(this).remove();
  284.                 });
  285.         },
  286.         AdjustWidth: function () {
  287.         var Wself = arguments[0] ? arguments[0] : 1;
  288.         var Wnow = parseInt(Graphics._canvas.style.width);
  289.         var Wadjust = Wnow / 1600 * Wself ;
  290.         Wadjust = Math.round(Wadjust);
  291.         return  Wadjust;
  292.         },
  293.         AdjustHeight: function () {
  294.         var Hself = arguments[0] ? arguments[0] : 1;
  295.         var Hnow = parseInt(Graphics._canvas.style.height);
  296.         var Hadjust = Hnow / 900 * Hself ;
  297.         Hadjust = Math.round(Hadjust);
  298.         return  Hadjust;
  299.         },
  300.         AdjustX: function () {
  301.         var Xself = arguments[0] ? arguments[0] : 1;
  302.         var Wnow = parseInt(Graphics._canvas.style.width);
  303.         var Winner = window.innerWidth;
  304.         var Xadjust = Wnow / 1600 * Xself ;
  305.         if(Wnow != Winner){
  306.            var Xpy = (Winner - Wnow) / 2;
  307.            Xadjust = Xadjust + Xpy;
  308.         }
  309.         Xadjust = Math.round(Xadjust);
  310.         return  Xadjust;
  311.         },
  312.         AdjustY: function () {
  313.         var Yself = arguments[0] ? arguments[0] : 1;
  314.         var Hnow = parseInt(Graphics._canvas.style.height);
  315.         var Hinner = window.innerHeight;
  316.         var Yadjust = Hnow / 900 * Yself ;
  317.         if(Hnow != Hinner){
  318.                 var Ypy = (Hinner - Hnow) / 2 ;
  319.                 Yadjust = Yadjust + Ypy;
  320.         }
  321.         Yadjust = Math.round(Yadjust);
  322.         return  Yadjust;
  323.         }
  324.  
  325. };

点评

是的 我就是想修改下楼主的代码 但是我找了挺久 还是没找到对应的正确的 zIndex ...  发表于 2019-8-17 21:18
这个是直接写了z-index到元素上啊, 这个比较底层, 你需要修改一下楼主的代码比较方便吧.应该有个style.zIndex的东西,  发表于 2019-8-17 21:15
用mv做了两款游戏,有兴趣的可以瞧一瞧:
《有毛病》--- 休闲、探索、策略、剧情、恐怖 都有那么一些,就是没有战斗。挺骚挺有意思的一个游戏。
steam链接:点击这里


《留离》--- 探索、高自由度、ARPG、战斗,就是没有啥剧情。
steam链接:点击这里
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3077
在线时间
337 小时
注册时间
2018-3-28
帖子
203
9
发表于 2019-8-18 08:04:11 | 只看该作者
本帖最后由 wr282828 于 2019-8-18 08:06 编辑
沉滞的剑 发表于 2019-8-17 16:08
深度管理需要对children列表进行排序, 实现方式并不统一, 你可以把你的插件发过来么, 我研究一下该怎么弄 ...


心塞,突然发现,这个动画是 游戏最初的 GameCanvas上面进行绘制的,而它的 zIndex = 1,
我如果要让动画显示在我那个插件图片上面,必须自己新建一个 canvas ,然后再在这个画布上面 绘制动画

求大佬指点 我应该咋做  
主要是我不知道 怎么在自己新建的canvas上 调用mv原本的代码绘制动画在这个画布上...


=========================================================
=========================================================
=========================================================

点评

嗯嗯 心塞塞 感觉身体被掏空...  发表于 2019-8-18 09:46
嗯, 这个好像就是很难啊....其实深度插件不需要这么写的, 应该对children进行排序就可以了. 这个它的canvas永远在游戏canvas上面啊  发表于 2019-8-18 08:12
用mv做了两款游戏,有兴趣的可以瞧一瞧:
《有毛病》--- 休闲、探索、策略、剧情、恐怖 都有那么一些,就是没有战斗。挺骚挺有意思的一个游戏。
steam链接:点击这里


《留离》--- 探索、高自由度、ARPG、战斗,就是没有啥剧情。
steam链接:点击这里
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3750
在线时间
1177 小时
注册时间
2016-8-9
帖子
2395

开拓者

10
发表于 2020-11-5 00:30:59 | 只看该作者
yang大佬抱歉来打扰了,最近在使用您的这个插件做实验,想知道能不能通过代码将正在播放的动画取消掉?跪求指点

点评

太感谢大佬了,您真的是太牛了!!!  发表于 2020-11-5 21:47
更新了  发表于 2020-11-5 09:32
酸酸甜甜就④哇噢
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-27 12:24

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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