源码:世界之外Mumu 模拟器半自动存档读档脚本

运行环境:

mumu模拟器(需要将分辨率设置为平板960x540)

触动精灵(www.touchsprite.com)

 脚本源码:

require("TSLib")
w,h = getScreenSize()
if w~=540 or h ~=960 then
    dialog("本脚本仅支持540*960分辨率,请设置分辨率重启模拟器并重新运行。")
    mSleep(1000)
    lua_exit()
    mSleep(1000)
else
    --dialog("请确认已进入【如星璀璨】游戏主界面,建议手动开启自动和10倍速")
end

function savenew()
    --x,y = findMultiColorInRegionFuzzy(0xffffff, "-7|4|0xffffff,23|15|0xfffffd", 90, 661, 278, 733, 330, { orient = 2 })--默认平板
    -- x,y = findMultiColorInRegionFuzzy(0xffffff, "0|8|0xffffff,-6|4|0xffffff,-7|2|0xffffff", 90, 658, 218, 746, 269, { orient = 2 })--栖江雅筑平板
    x,y = findMultiColorInRegionFuzzy(0xffffff, "0|6|0xffffff,0|11|0xffffff,-7|4|0xffffff,8|1|0xffffff", 90, 259, 334, 331, 390, { orient = 2 })--顾时夜平板
    if x ~= -1 then
        tap(x,y)
        mSleep(1000)
    end
    x,y = findMultiColorInRegionFuzzy(0xfbfcfc, "8|0|0xfafafa,17|0|0xf9faf9,20|-29|0xfffffd,-2|-5|0x606266", 90, 229, 342, 299, 408, { orient = 2 })--存档+
    if x ~= -1 then
        tap(x,y)
        mSleep(1000)
    end
    x,y = findMultiColorInRegionFuzzy(0xf8f8f8, "6|-4|0xffffff,29|4|0xffffff,22|4|0xffffff,125|-4|0xfafafa,134|-2|0xfdfdfd,136|2|0xfefefe", 90, 344, 404, 555, 472, { orient = 2 })
    if x ~= -1 then--未选择存档,【保存存档】灰色
        mSleep(1000)
        tap(688,294)--选择存档19
        mSleep(1000)
    end
    x,y = findMultiColorInRegionFuzzy(0xfcfcf9, "-132|2|0xf8f8f7,-110|8|0xffffff,-102|6|0xffffff", 90, 341, 403, 556, 472, { orient = 2 })
    if x ~= -1 then
        tap(x,y)--【保存存档】亮起
        mSleep(1000)
        tap(575,341)--确定保存存档
        mSleep(1000)
        tap(914,63)--关闭存档
        mSleep(1000)
    end  
end

function loadhistory()
    --x,y = findMultiColorInRegionFuzzy(0xffffff, "-7|4|0xffffff,23|15|0xfffffd", 90, 661, 278, 733, 330, { orient = 2 })--默认平板
    --x,y = findMultiColorInRegionFuzzy(0xffffff, "0|8|0xffffff,-6|4|0xffffff,-7|2|0xffffff", 90, 658, 218, 746, 269, { orient = 2 })--栖江雅筑平板
    x,y = findMultiColorInRegionFuzzy(0xffffff, "0|6|0xffffff,0|11|0xffffff,-7|4|0xffffff,8|1|0xffffff", 90, 259, 334, 331, 390, { orient = 2 })--顾时夜平板
    if x ~= -1 then
        tap(x,y)
        mSleep(1000)
    end
    x,y = findMultiColorInRegionFuzzy(0xffffff, "22|-21|0xfffefd,23|-22|0xfffefc,25|-3|0xffffff,25|-6|0xfdfdfc,24|5|0xffffff", 90, 394, 350, 451, 399, { orient = 2 })--读档+
    if x ~= -1 then
        tap(x,y)
        mSleep(1000)
    end
    x,y = findMultiColorInRegionFuzzy(0xfcfcfc, "-24|5|0x6a6a6a,-32|6|0x6c6c6c,-10|20|0x989898", 90, 350, 413, 557, 472, { orient = 2 })--读档灰色
    if x ~= -1 then--未选择存档,【存档】灰色
        mSleep(1000)
        tap(688,294)---选择存档19
        mSleep(1000)
    end
    x,y = findMultiColorInRegionFuzzy(0xfdfdfd, "-8|-2|0xfafbf7,-1|4|0xfefefe,-32|4|0x70675d,-36|2|0x6c625a", 90, 341, 407, 560, 476, { orient = 2 })--读档亮起
    if x ~= -1 then--【载入存档】亮起
        tap(x,y)
        mSleep(1000)
        tap(575,341)--确定载入存档
        mSleep(1000)
        tap(914,63)--关闭读档
        mSleep(1000)
    end
end

function start()
    x,y = findMultiColorInRegionFuzzy(0xf8f8f8, "3|-5|0xebebeb,17|-5|0xe9e9ea,20|-1|0xf5f5f6,21|-23|0x7c7d81,16|-17|0xa7a7ab,3|-19|0x99999e,10|-12|0xc8c8ca", 90, 874, 69, 913, 108, { orient = 2 })
    if x ~= -1 then--关掉微博
        tap(x,y)
    end
    x,y = findMultiColorInRegionFuzzy(0xffffff, "0|6|0xffffff,0|12|0xfcfcfb,15|1|0xfffffe,15|7|0xfdfcfc,33|10|0xfefdfd,41|10|0xfefdfd,37|22|0xefebe9", 90, 812, 236, 881, 282, { orient = 2 })
    if x ~= -1 then
        tap(x,y)--日程
    end
    x,y = findMultiColorInRegionFuzzy(0xf7cdac, "19|2|0xf6f6f6,19|6|0xf6f6f6", 90, 863, 166, 938, 203, { orient = 2 })
    if x ~= -1 then
        tap(x,y)--工作
        mSleep(1000)
        tap(546,142)--第一种工作
        mSleep(1000)
        x,y = findMultiColorInRegionFuzzy(0xffffff, "6|-3|0xffffff,6|5|0xffffff,31|8|0xfcfcfc,39|6|0xffffff,47|9|0xffffff,65|-3|0xffffff", 90, 401, 456, 606, 512, { orient = 2 })
        if x ~= -1 then
            tap(x,y)--【开始行程】
        end
    end
    x,y = findMultiColorInRegionFuzzy(0xffffff, "11|5|0xffffff,33|11|0xffffff,63|4|0xffffff,69|21|0xffffff,95|10|0xffffff,94|20|0xffffff", 90, 410, 139, 543, 177, { orient = 2 })
    if x ~= -1 then--温馨提示
        tap(429,275)--今日不再提醒
        mSleep(1000)
        tap(604,351)--确定
    end
end

function fdwindow()
    fwShowWnd("window1",10,100,110,230,1); 
    mSleep(500)
    fwShowButton("window1","savebutton","存档","ffffff","417505","",15,0,0,100,50);--存档
    fwShowButton("window1","loadbutton","读档","ffffff","B8E986","",15,0,60,100,110)--读档  
end

init(1)
mSleep(1000)
local save = 0
local load = 0

fdwindow()

while true do
    fwShowWnd("window1",10,100,110,230,1); 
    mSleep(500)
    local vid,kind = fwGetPressedButton()
    if vid == "savebutton" then
        save = save + 1
        if kind == 1 then   
            fwCloseWnd("wid"); --关闭父窗口
            savenew()    
            fdwindow()
        end
    end   
    if vid == "loadbutton" then
        load = load + 1
        if kind == 1 then 
            fwCloseWnd("wid"); --关闭父窗口
            loadhistory()
            fdwindow()
        end
    end  
    x,y = findMultiColorInRegionFuzzy(0xffffff, "0|4|0xffffff,5|4|0xfffffe,21|-3|0xffffff,20|1|0xffffff,36|34|0xf5f0ee,35|31|0xfaf7f5", 90, 839, 426, 912, 498, { orient = 2 })--回家
    if x ~= -1 then
        tap(x,y)
    end
    --显示一个可移动的父窗口并指定窗口 ID 为 wid
end

使用方法:

触动精灵左上角加号新建脚本,复制粘贴上面的内容,勾选,运行。

在游戏中遇到重要节点,比如刷出来一个完美,想要存档就点存档,想要读档就点读档。

 注意事项

现在的版本是走到顾时夜准备的大房子了,进入平板界面每个不同的房子都不一样,其他房子需要自己取色。

 

posted @ 2025-07-17 18:43  丸子233  阅读(50)  评论(0)    收藏  举报