Project1

标题: 怎么实时更新角色坐标位置,新人求教 [打印本页]

作者: 流浪杰哥    时间: 2020-12-31 14:54
标题: 怎么实时更新角色坐标位置,新人求教
战斗的时候使用$gameParty.setFormationID改变坐标时,不能及时刷新角色位置,有什么办法能及时刷新一下变更后的位置么?还请大佬们指点一下
新人刚刚学习一点点js,下面代码写的可能很粗糙。。。。






JAVASCRIPT 代码复制
  1. (() => {
  2.     //设置角色阵型的哈希,键为阵型ID,值为角色坐标
  3.     let Actor_Pos = {
  4.         //散开阵
  5.     0: [[595, 172],
  6.         [615, 228],
  7.         [635, 284],
  8.         [655, 340],
  9.         [675, 396]],
  10.  
  11.         //鹤翼阵
  12.     1: [[675, 172],
  13.         [675, 228],
  14.         [721, 284],
  15.         [675, 340],
  16.         [675, 396]],
  17.  
  18.     };
  19.  
  20.  
  21. //初始化阵型id
  22. const UncleJay_Formation_initialize = Game_Party.prototype.initialize
  23.     Game_Party.prototype.initialize = function() {
  24.         UncleJay_Formation_initialize.call(this);
  25.         this._formation = 0;
  26.     };
  27.  
  28.  
  29.  
  30. //获取阵型id
  31.     Game_Party.prototype.formation = function() {
  32.         return this._formation;
  33.     };
  34.  
  35.  
  36. //设置阵型id
  37.     Game_Party.prototype.setFormationID = function(num) {
  38.         this._formation = num;
  39.     };
  40.  
  41. //战斗画面下角色坐标的设置
  42.     Sprite_Actor.prototype.setActorHome = function(index) {
  43.         const id = $gameParty.formation();
  44.         const x = Actor_Pos[id][index][0];
  45.         const y = Actor_Pos[id][index][1];
  46.         this.setHome(x, y);
  47.     };
  48.  
  49. })();

作者: 流浪杰哥    时间: 2021-1-3 11:07
本帖最后由 流浪杰哥 于 2021-1-3 12:31 编辑

有没有老哥来指点一下,精灵的位置怎么刷新,折腾了很久没有什么好办法,我想到呼叫一个空的场景然后再删除,SceneManager.push(null);  SceneManager.pop(); 这个办法总感觉太不友好了,虽然的确能够更新一下坐标位置,但这似乎不科学,也不知道这样做合不合理




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1