じ☆ve冰风 发表于 2024-3-7 02:09:42

获得&更新玩家Sprite的API

hi, 各位RM开发者

      小弟正在写一个功能——玩家吃巧克力,体重上升,角色变胖

      目前的实现是通过下面代码完成的:

      JAVASCRIPT 代码
function playerGetWeightProcess(){

    var sprites = SceneManager._scene._spriteset._characterSprites;

    // 寻找玩家角色的精灵
    var playerSprite = sprites.find(function(sprite){
      return sprite._character === $gamePlayer;
    });

    if($gameActors._data.luk >= 100){
      $gamePlayer.setMoveSpeed(2);
      playerSprite.scale._x = 3
      playerWeightLevel = 3;

    }elseif($gameActors._data.luk >= 80){
      $gamePlayer.setMoveSpeed(3);
      playerSprite.scale._x = 2
      playerWeightLevel = 2;

    }elseif($gameActors._data.luk >= 60){
      $gamePlayer.setMoveSpeed(4);
      playerSprite.scale._x = 1
      playerWeightLevel = 1;

    }

}


      我有2个问题:

      - 如何高效的获取$gamePlayer的sprite?我目前的实现方式是遍历了全地图,感觉很浪费
      - 如何手动更新变化后的sprite?目前这段代码的效果是,玩家必须移动1格,才会变胖

             本帖来自P1论坛作者taoyihong,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=494276若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
页: [1]
查看完整版本: 获得&更新玩家Sprite的API