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

Project1

 找回密码
 注册会员
搜索
楼主: yanzhllwc
打印 上一主题 下一主题

[有事请教] 如何让图片始终指向鼠标位置的问题

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3446
在线时间
1158 小时
注册时间
2016-8-9
帖子
2389

开拓者

11
发表于 2019-12-25 18:30:10 | 只看该作者
yanzhllwc 发表于 2019-12-25 18:15
我在一起结合着看啊,我不能等我看后全部理解消化完再来和你说谢谢吧,那要等什么时候去了,我觉得先谢过 ...

我晕,是我理解错了,我以为【你说要的是实时鼠标坐标,而我给的不是】

我错了,可能最近打lol经常跟人对喷,我整个人都敏感暴躁了
酸酸甜甜就④哇噢
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
404
在线时间
45 小时
注册时间
2012-7-16
帖子
41
12
 楼主| 发表于 2019-12-25 18:59:00 | 只看该作者
白嫩白嫩的 发表于 2019-12-25 18:30
我晕,是我理解错了,我以为【你说要的是实时鼠标坐标,而我给的不是】

我错了,可能最近打lol经常跟人 ...

没有没有,经常看到大佬帮助别人解决问题,我是个美术,只能看懂大佬们写的if是如果,var是定义临时变量,之后其他什么的就只能半猜半蒙去理解,怕你误会我是想等你帮我什么都弄好,我就直接用而生气赶快解释一下

评分

参与人数 1+1 收起 理由
白嫩白嫩的 + 1 摸摸头

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3446
在线时间
1158 小时
注册时间
2016-8-9
帖子
2389

开拓者

13
发表于 2019-12-25 20:31:15 | 只看该作者
yanzhllwc 发表于 2019-12-25 18:59
没有没有,经常看到大佬帮助别人解决问题,我是个美术,只能看懂大佬们写的if是如果,var是定义临时变量 ...

为了表示歉意,再给你抛砖引玉一个
人物朝向鼠标
酸酸甜甜就④哇噢
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
15507
在线时间
3950 小时
注册时间
2015-9-14
帖子
1333

开拓者

14
发表于 2019-12-27 15:37:51 | 只看该作者
Mog有整套插件RMV – Chrono Engine
單條插件工具(回力鏢,鏈子槍......)網址
插件TsumioActions.js
示例項目示例項目

点评

感谢大大!!那个锁链很厉害!  发表于 2020-1-1 21:48
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
404
在线时间
45 小时
注册时间
2012-7-16
帖子
41
15
 楼主| 发表于 2019-12-28 01:01:52 | 只看该作者
本帖最后由 yanzhllwc 于 2019-12-28 01:02 编辑
wabcmcc 发表于 2019-12-27 15:37
Mog有整套插件RMV – Chrono Engine
單條插件工具(回力鏢,鏈子槍......)網址
插件TsumioActions.js


厉害了,哈哈哈,谢谢啦,我现在使用着另一个ABS的插件,我都不知道原来还有这么多这样的插件,现在基本的功能还是能做的,现在就是卡在这里,试了很久,小白的我根本不懂JS的书写规则,看大佬写的很多函数不知道是怎么调用的,应该是自己定义的,可是自己又不懂怎么改才能引用到游戏里,苦手、、哈哈
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3446
在线时间
1158 小时
注册时间
2016-8-9
帖子
2389

开拓者

16
发表于 2019-12-28 08:12:55 | 只看该作者
本帖最后由 白嫩白嫩的 于 2019-12-28 08:56 编辑
yanzhllwc 发表于 2019-12-28 01:01
厉害了,哈哈哈,谢谢啦,我现在使用着另一个ABS的插件,我都不知道原来还有这么多这样的插件,现在基本 ...


14楼大神提起了mog,让我想起了指南针插件,通过这个插件再加上鼠标变量估计可以做成指向鼠标的小玩意,待我一会儿试试

不行,指南针只能指向事件id,指南针指针和表盘位置也是固定坐标,算了。。。
酸酸甜甜就④哇噢
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
404
在线时间
45 小时
注册时间
2012-7-16
帖子
41
17
 楼主| 发表于 2019-12-29 00:26:07 | 只看该作者
白嫩白嫩的 发表于 2019-12-28 08:12
14楼大神提起了mog,让我想起了指南针插件,通过这个插件再加上鼠标变量估计可以做成指向鼠标的小玩意, ...


是呢,一开始我也是这么想的,我先把指南针固定在屏幕中间,但是角色到达地图边缘时就不匹配了,事件跟随鼠标倒是应该可以的,但效果估计差点,因为之前试过让事件跟随玩家,反响不行,因为玩家是像素移动,而那个事件是按格子跟随,匹配不上、、、、
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
404
在线时间
45 小时
注册时间
2012-7-16
帖子
41
18
 楼主| 发表于 2019-12-29 02:49:37 | 只看该作者
本帖最后由 yanzhllwc 于 2019-12-29 02:59 编辑

由于不会程序,所以尝试了很多写法,总之是不成功,最后决定把里面的内容简单化,写成了下面的样子:

(function () {
       
        var _TouchInput__onMouseMove = TouchInput._onMouseMove;
    TouchInput._onMouseMove = function(event) {
        _TouchInput__onMouseMove.apply(this, arguments);
        this.mouseX = Graphics.pageToCanvasX(event.pageX);
        this.mouseY = Graphics.pageToCanvasY(event.pageY);
    };
       
        var px = $gamePlayer._realX;
        var py = $gamePlayer._realY;
        var mx = TouchInput.mouseX;
        var my = TouchInput.mouseY;
        var targetShuttle = 0;
       
        if(px <= mx) {
                if (py >= my) {
                        targetShuttle = 45;
                } else {
                        targetShuttle = 135;
                }
        } else {
                if (py >= my) {
                        targetShuttle = 315;
                } else {
                        targetShuttle = 225;
                }
        };
       
        $gameScreen.picture(5)._angle = targetShuttle;
       
})();

存了一个js放在了插件目录并在游戏中开启,自我感觉是先定义了鼠标的移动时XY坐标,之后用px,py,mx,my分别代表玩家XY坐标和鼠标XY坐标,引用 芯☆淡茹水 大佬的区域判断,让那个5号图片的角度值呈现45,135,225,315的变化,可是这样都不成功,那张图片完全没有变化、、不知道有没有大佬能帮我看看是什么小白问题导致了不成功、、、、、

点评

喽主加油! 好期待你成功的那一天~  发表于 2019-12-29 10:33

评分

参与人数 1+1 收起 理由
白嫩白嫩的 + 1 加油,期待楼主早点成功!!!.

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3053
在线时间
318 小时
注册时间
2015-4-30
帖子
92
19
发表于 2019-12-31 01:38:12 | 只看该作者
瞎猜一下,可能是长这样子的。

点评

感谢月光大佬解惑,容我等在研究研究,哈哈  发表于 2019-12-31 23:15
MV内置的是A-Start寻路算法,这算法更适合落点到大格子,也就是4方向、8方向这样。如果像楼下说的像素点移动,感觉MV很吃力了。  发表于 2019-12-31 21:10
至于角度的计算,简书上有关于Math.atan2的算法介绍,这里就不赘述了。箭头原地转感觉还是可以实现的,不过让人物跟随箭头走还得依赖寻路吧。  发表于 2019-12-31 21:07
楼主的方法由于没有给出上下文,所以不好评论。不过看代码写到了角度但没赋值弧度rotation的值,第一眼的感觉就是游戏画面应该会没反应。  发表于 2019-12-31 21:02
上图只是将事件显示名称改成显示箭头,毕竟MV有内置的方向计算方法,调用一下而已。不过如果要改成楼下那样的像素点移动,估计得重写寻路  发表于 2019-12-31 21:00

评分

参与人数 1+1 收起 理由
白嫩白嫩的 + 1 精品文章

查看全部评分

回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7013
在线时间
1358 小时
注册时间
2018-12-16
帖子
1939
20
发表于 2019-12-31 17:05:22 | 只看该作者
下面這個官方插件 可以做到 月光大的功能
不過 他只可以 4個方向轉而已
就是無法像 下面這兩個一樣 可以 全方向.... 而且跟很多插件衝突....

01.本來找到GLV的MV Map Projectiles,但是相當難設定..
https://galvs-scripts.com/2016/09/13/mv-map-projectiles/

02. 日本人做的這個 看起來很厲害...不過也是很難設定
https://tm.lucky-duet.com/viewtopic.php?t=7121
https://game.nicovideo.jp/atsumaru/games/gm9334

-----------------------------------
//=============================================================================
// PlayerPointerTurn.js
// ----------------------------------------------------------------------------
// Copyright (c) 2015 Triacontane
// This software is released under the MIT License.
// http://opensource.org/licenses/mit-license.php
// ----------------------------------------------------------------------------
// Version
// 1.1.0 2018/02/10 PD_8DirDash.js?券€????游????孵??怠紋敹????賬?餈賢??????
// 1.0.0 2016/02/23 ??
// ----------------------------------------------------------------------------
// [Blog]   : https://triacontane.blogspot.jp/
// [Twitter]: https://twitter.com/triacontane/
// [GitHub] : https://github.com/triacontane/
//=============================================================================

/*:
* @plugindesc ??喋餈質楚??啜??
* @author ??U?喋??
*
* @help 蝘餃??航?芸???扎?潦?
* ??嫘??扎?踴?嫘????整???
*
* ???啜?喋?胯??押?扎?喋??喋??胯??????
*
* ?拍閬?嚗?
*  雿€?⊥?扳憭€?????賬??典耦?????8蝳?函?嚗?
*  ?怒??????整??€?
*  ???啜?喋??????扼???
*/
(function() {

    var isExistPlugin = function(pluginName) {
        return PluginManager._parameters.hasOwnProperty([pluginName.toLowerCase()]);
    };

    //=============================================================================
    // Game_Player
    //  ??喋?格????
    //=============================================================================
    var _Game_Player_moveByInput      = Game_Player.prototype.moveByInput;
    Game_Player.prototype.moveByInput = function() {
        if (!this.isMoving() && this.canMove() && TouchInput.isMoved()) {
            this.turnToPointer();
        }
        _Game_Player_moveByInput.apply(this, arguments);
    };

    Game_Player._8dirTable = [6, 9, 8, 7, 4, 1, 2, 3, 6];
    Game_Player.prototype.turnToPointer = function() {
        var tx = TouchInput.x, ty = TouchInput.y, sx = this.screenX(), sy = this.screenY();
        var dir;
        if (isExistPlugin('PD_8DirDash') && this._characterName.indexOf('Q') !== -1) {
            var degree = (Math.atan2(ty - sy, -(tx - sx)) / Math.PI + 1) / 2 * 8;
            dir        = Game_Player._8dirTable[Math.round(degree)];
        } else {
            dir = Math.abs(tx - sx) > Math.abs(ty - sy) ? (tx > sx ? 6 : 4) : (ty > sy ? 2 : 8);
        }
        this.setDirection(dir);
    };

    //=============================================================================
    // TouchInput
    //  ??喋?桐?蝵柴?撣詻閮
    //=============================================================================
    TouchInput._onMouseMove = function(event) {
        var x = Graphics.pageToCanvasX(event.pageX);
        var y = Graphics.pageToCanvasY(event.pageY);
        this._onMove(x, y);
    };
})();

点评

谢谢大大帮忙寻找插件!!  发表于 2020-1-1 21:48
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-20 13:36

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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