| 
 
| 赞 | 0 |  
| VIP | 0 |  
| 好人卡 | 0 |  
| 积分 | 2 |  
| 经验 | 0 |  
| 最后登录 | 2025-6-26 |  
| 在线时间 | 23 小时 |  
 Lv1.梦旅人 
	梦石0 星屑185 在线时间23 小时注册时间2023-9-2帖子22 | 
5楼
 
 
 楼主|
发表于 2023-9-9 09:39:08
|
只看该作者 
| 复制代码//重置当前地图内所有事件------------------------------------------
function resetCurrentMapAll(){
    var events = $gameMap.events();
    // 循环遍历事件列表,重置每个事件的状态
    for (var i = 0; i < events.length; i++) {
        var event = events[i];
        var id = event.event().id
       
        // 重置位置
        var originalX = $dataMap.events[id].x;  // 获取事件在编辑器中的初始 X 坐标
        var originalY = $dataMap.events[id].y;  // 获取事件在编辑器中的初始 Y 坐标
        var originalDir = $dataMap.events[id].pages[0].image.direction; // 获取事件在编辑器中的初始朝向
        event.setPosition(originalX, originalY);  // 设置事件位置初始坐标
        event.setDirection(originalDir);// 设置事件位置初始朝向
        
        // 其他重置操作,比如重置变量等
        var selfSwitchKey = [$gameMap._mapId, event.event().id, 'A'];
        $gameSelfSwitches.setValue(selfSwitchKey, false);
    }
    
}
 @任小雪,代码我贴在这边了,要注意的是,开关部分,我仅仅重置了独立开关A,因为我项目里用这个开关控制所有敌人的死亡状态,
 你可以根据你项目的需要改动这块
 | 
 |