| 赞 | 1  | 
 
| VIP | 0 | 
 
| 好人卡 | 0 | 
 
| 积分 | 1 | 
 
| 经验 | 0 | 
 
| 最后登录 | 2020-5-2 | 
 
| 在线时间 | 9 小时 | 
 
 
 
 
 
Lv1.梦旅人 
	- 梦石
 - 0 
 
        - 星屑
 - 115 
 
        - 在线时间
 - 9 小时
 
        - 注册时间
 - 2020-2-28
 
        - 帖子
 - 7
 
 
 
 | 
	
3楼
 
 
 楼主 |
发表于 2020-2-29 12:27:22
|
只看该作者
 
 
 
//============================================================================= 
// AnimatedSVEnemies.js 
// Version: 1.16a - The Re-Remake 
//============================================================================= 
 
var Imported = Imported || {}; 
Imported.AnimatedSVEnemies = true; 
 
var Rexal = Rexal || {}; 
Rexal.ASVE = Rexal.ASVE || {}; 
/*: 
 * @plugindesc 版本:1.16——Re-Remake 
*——让敌人动画! 
 * @author Rexal 
 * 
 
  * @param Debug 
 * @desc 登录到控制台(F8)? 
 * @default true 
  
 * @param No Movement 
 * @desc 执行操作时防止敌人移动。 
 * @default false 
  
 * @param Enemies Celebrate 
 * @desc 敌人将庆祝你的灭亡。 
 * @default true 
  
  * @param SV Enemies Collapse 
 * @desc 所有SV敌人死后将会崩溃。 
 * @default false 
  
 * @param Static Enemies Breathe 
 * @desc 静态的敌人有呼吸的影响 
 * @default true 
  
 * @param AGI Effects Breathing 
 * @desc 静态敌人更高播洒统计会呼吸得更快。 
 * @default true 
  
 * @param Scale Statics by Distance 
 * @desc 静态的敌人会在后台较小的越远 
 * @default true 
  
  * @param Damage Slows Down Breathing 
 * @desc 呼吸减慢了更大的伤害 
 * @default true 
  
  * @help 
 
 -------------------------------------------------------------------------------- 
 Notetags 
 ================================================================================ 
  
  
 ---------------------------[SV Battlers]--------------------------------- 
  
 [SV Animated] 
 -集敌人使用SV演员雪碧。这些都是位于sv_actors 
文件夹中。确保有一个精灵,文件夹名称相匹配 
你用敌人的形象。 
 
 [Collapse] 
 - 让SV敌人使用崩溃动画不管参数设置。 
  
 [No Collapse] 
 - 阻止SV敌人使用崩溃动画无论参数设置。 
  
 SV Motion: motion 
 -集敌人攻击时使用这种运动。如果你不知道什么运动 
您可以使用,请参考运动列表底部的帮助部分。 
  SV Weapon: id 
 - “装备”这种武器的敌人。 
 
 Ex: SV Weapon: 1 
  
        SV Weapon Scale: amount 
        增加武器的大小相同的量。 
          
         SV Weapon Anchor: x,y 
        设置武器的锚点。 
Ex. SV Weapon Anchor: .5,1 
 
          SV Anchor: x,y 
         集战斗者的锚点。 
          
Ex. SV Anchor: .5,1 
  
  ----------------------------[Static Battlers]--------------------------------- 
  
 [Breathless] 
 -这个敌人不呼吸。有用的魔像和邪恶的墙壁。 
  
 [Float] 
 吹嘘的有一个浮动的效果类似于rm2k3的敌人。 
  
呼吸控制:speedScale xScale yScale 
集的速度正弦波,多少次的雪碧的大小 
允许去width-wise height-wise。 
   
你要尝试直到它看起来正常一点的值。的 
下面的例子是默认设置。 
  
 Ex: Breath Control: 50,5,25 
  
 
 -----------------------------------[Both]--------------------------------------- 
  
 Enemy Scale: amount 
  
增加了敌人的大小相同的量。 
  
  
 -------------------------------------------------------------------------------- 
 Version Log 
 ================================================================================ 
   
v1 -初始版本 
  
v1.05——许多修复 
——固定问题的敌人不打正确的动画,不止一个 
敌人是在屏幕上。 
- Misc。修复,我忘记了。 
——添加SV武器,它可以让你发挥武器动画(目前向后)。 
这是我其他不兼容脚本:精灵武器增强。 
添加了一个参数,阻止敌人移动。 
  
v1.075——深呼吸 
——静态的敌人现在呼吸! 
——添加很多东西来控制呼吸。(notetags不工作!) 
  
v1.08——固定呼吸 
——呼吸notetags工作现在!耶! 
——添加(浮动) 
  
v1.1——生活和重新加载 
   
呼吸减慢惠普敌人越少。(及他们只是呼吸更少) 
——添加一个选项,让敌人规模进一步分成背景。 
——固定武器! 
——敌人可以庆祝你的灭亡。 
——固定Flash目标错误。 
- SV敌人可以崩溃。 
- SV敌人将正确地出现 
——敌人有适当的逃脱动画。 
——敌人现在正确定位。 
——你现在可以规模敌人无论你想要的。 
   
v1.101 - 
   
——添加一个参数,以防止敌人呼吸慢更大的伤害。 
   
v1.11 - 
   
——固定定位。对不起! 
   
v1.111 - 
——没有发表评论。 
v1.113 - 
固定武器。 
 
 
v1.12 - 
——完全重写脚本的关键部分。 
——请注意标签不再是区分大小写的。 
——正式固定定位。 
——固定流动问题。 
   
v1.15——Re-Remake 
——大规模清理,应该让它更兼容。 
   
v1.15.1 - 
还伤害数字没有出现问题。 
v1.15.3 
固定一些东西。 
v1.15.5 
员工的一些东西。= m = 
 
 
v1.15.5.1 
应该更兼容的东西 
 
 
v1.16a 
 
 
- - - 
——一般改进 
——添加SV雪碧 
——改变了武器的处理方式。 
  
 -------------------------------------------------------------------------------- 
 Motion List 
 ================================================================================ 
 walk -准备好了动画 
 wait - 空闲动画 
 chant -魔法动画做好了准备 
 guard - 警卫动画 
 damage - 伤害的动画 
 evade -逃避动画 
 thrust - 刺动画 
 swing - 摆动的动画 
 missile - 射击动画 
 skill - 物理技能使用动画 
 spell - 神奇的技能使用动画 
 item - 道具使用动画 
 escape - 逃避动画 
 victory - 胜利的动画 
 dying - 危险”动画 
 abnormal - 异常的影响 
 sleep - 睡觉的动画 
 dead - 死动画 
  
  
 */ 
  
 Rexal.ASVE.Parameters = PluginManager.parameters('animatedSVEnemies'); 
 Rexal.ASVE.Debug = eval(String(Rexal.ASVE.Parameters['Debug'])); 
 Rexal.ASVE.NoMovement = eval(String(Rexal.ASVE.Parameters['No Movement'])); 
  Rexal.ASVE.Breathe = eval(String(Rexal.ASVE.Parameters['Static Enemies Breathe'])); 
  Rexal.ASVE.AGIB = eval(String(Rexal.ASVE.Parameters['AGI Effects Breathing'])); 
  Rexal.ASVE.Celebration = eval(String(Rexal.ASVE.Parameters['Enemies Celebrate'])); 
   Rexal.ASVE.DoCollapse = eval(String(Rexal.ASVE.Parameters['SV Enemies Collapse'])); 
 Rexal.ASVE.DamageSlow = eval(String(Rexal.ASVE.Parameters['Damage Slows Down Breathing'])); 
     Rexal.ASVE.ScaleStatics = eval(String(Rexal.ASVE.Parameters['Scale Statics by Distance']));   
          
            
  //----------------------------------------------------------------------------- 
 //Original Functions Storage 
//============================================================================= 
Rexal.ASVE.Game_Enemy_makeActions = Game_Enemy.prototype.makeActions; 
Rexal.ASVE.Game_Enemy_performDamage = Game_Enemy.prototype.performDamage; 
Rexal.ASVE.Sprite_Enemy_updateBitmap =   Sprite_Enemy.prototype.updateBitmap; 
Rexal.ASVE.seupdateappear = Sprite_Enemy.prototype.updateAppear; 
Rexal.ASVE.processDefeat = BattleManager.processDefeat; 
Rexal.ASVE.spriteactorupdatebitmap = Sprite_Actor.prototype.updateBitmap; 
Rexal.ASVE.setupweaponanimation = Sprite_Actor.prototype.setupWeaponAnimation; 
Rexal.ASVE.setactorhome = Sprite_Actor.prototype.setActorHome; 
  //----------------------------------------------------------------------------- 
// BattleManager 
//============================================================================= 
   
  if(Rexal.ASVE.Celebration) 
  {   
 
  BattleManager.processDefeat = function() { 
          Rexal.ASVE.processDefeat.call(this); 
    if(Rexal.ASVE.Celebration)$gameTroop.performVictory(); 
}; 
  } 
   
 
  //----------------------------------------------------------------------------- 
// Game_Enemy 
//============================================================================= 
 
Game_Enemy.prototype.weapons = function() { 
var item = this._equips[0]; 
return [item && DataManager.isWeapon(item)]; 
}; 
 
Game_Enemy.prototype.hasWeapon = function(weapon) { 
    return this._equips[0]; 
}; 
 
Game_Enemy.prototype.performAttack = function() { 
         
if(this._equips[0]) 
        Game_Actor.prototype.performAttack.call(this); 
else 
{ 
 this.requestMotion(this._motion); 
} 
 
}; 
 
Game_Enemy.prototype.attackAnimationId1 = function() { 
Game_Actor.prototype.attackAnimationId1.call(this); 
}; 
 
Game_Enemy.prototype.attackAnimationId2 = function() { 
Game_Actor.prototype.attackAnimationId2.call(this); 
}; 
 
Game_Enemy.prototype.bareHandsAnimationId = function() { 
Game_Actor.prototype.bareHandsAnimationId.call(this); 
}; 
 
Game_Enemy.prototype.hasNoWeapons = function() { 
Game_Actor.prototype.hasNoWeapons.call(this); 
} 
 
 
Game_Enemy.prototype.performAction = function(action) { 
Game_Actor.prototype.performAction.call(this,action); 
}; 
 
Game_Enemy.prototype.performDamage = function() { 
    Rexal.ASVE.Game_Enemy_performDamage.call(this); 
    this.requestMotion('damage'); 
}; 
 
Game_Enemy.prototype.actor = function() { 
    return $dataEnemies[this._enemyId]; 
}; 
 
 
Game_Enemy.prototype.performEvasion = function() { 
    Game_Battler.prototype.performEvasion.call(this); 
    this.requestMotion('evade'); 
}; 
 
Game_Enemy.prototype.performMagicEvasion = function() { 
    Game_Battler.prototype.performMagicEvasion.call(this); 
    this.requestMotion('evade'); 
}; 
 
Game_Enemy.prototype.performCounter = function() { 
    Game_Battler.prototype.performCounter.call(this); 
    this.performAttack(); 
}; 
 
Game_Enemy.prototype.performVictory = function() { 
    if (this.canMove()) { 
        this.requestMotion('victory'); 
    } 
}; 
 
 
 
Game_Enemy.prototype.makeActions = function() { 
Rexal.ASVE.Game_Enemy_makeActions.call(this); 
 this.setActionState('undecided'); 
}; 
 
 
Game_Enemy.prototype.performEscape = function() { 
    if (this.canMove()) { 
        this.requestMotion('escape'); 
    } 
}; 
 
  //----------------------------------------------------------------------------- 
// Game_Troop 
//============================================================================= 
Game_Troop.prototype.performVictory = function() { 
    this.members().forEach(function(enemy) { 
        enemy.performVictory(); 
    }); 
}; 
  //----------------------------------------------------------------------------- 
// Sprite_Enemy 
//============================================================================= 
 
Sprite_Enemy.prototype.setBattler = function(battler) { 
    Sprite_Battler.prototype.setBattler.call(this, battler); 
        this._random = [Math.random()*1000000,Math.random()*1000000,Math.random()*1000000]; 
    this._enemy = battler; 
    this.setHome(battler.screenX(), battler.screenY()); 
    this._stateIconSprite.setup(battler); 
}; 
         
Sprite_Enemy.prototype.updateBitmap = function() { 
         
 Rexal.ASVE.Sprite_Enemy_updateBitmap.call(this); 
 
        if(!this._enemy._breathless && Rexal.ASVE.Breathe){ 
                var a = 1; 
                if(Rexal.ASVE.AGIB) a = this._enemy.agi/100+1; 
        var breathS = this._enemy._breath[0]/1000; 
        var bx = (Graphics.frameCount+this._random[0]); 
        var by = (Graphics.frameCount+this._random[1]); 
        if(Rexal.ASVE.DamageSlow) breathS *= (this._enemy.hp/this._enemy.mhp)+.1; 
        var breathY = Math.cos(bx*breathS*a)*(this._enemy._breath[2]/1000); 
        var breathX = Math.cos(by*breathS)*(this._enemy._breath[1]/1000); 
        if(Rexal.ASVE.DamageSlow)breathY *= (this._enemy.hp/this._enemy.mhp); 
        var ss = Graphics.boxHeight/624+.1; 
        if(Rexal.ASVE.ScaleStatics)var s = ss*(this._homeY/Graphics.boxHeight)*this._enemy._scale; 
        else var s = this._enemy._scale; 
        this.smooth = true; 
        this.scale.y = s+breathY; 
        this.scale.x = s+breathX; 
        } 
         
        if(this._enemy._floating && !this.isBusy) 
        { 
                var f = Math.cos(Graphics.frameCount/50+this._random[2]*a)*20*a; 
                this.setHome(this._enemy.screenX(),this._enemy.screenY()+f); 
        } 
         
}; 
 
var sesf = Sprite_Enemy.prototype.stepForward; 
Sprite_Enemy.prototype.stepForward = function() { 
   if(!Rexal.ASVE.NoMovement) sesf.call(this); 
}; 
 
 
        var sesh = Sprite_Enemy.prototype.setHome; 
                Sprite_Enemy.prototype.setHome = function(x,y) { 
                        sesh.call(this,x,y); 
                        var dX = Graphics.boxWidth/816; 
                        var dY = Graphics.boxHeight/624; 
                         
                        y*= dY; 
                        x*= dX; 
                         
                        this._homeX = x; 
                        this._homeY = y + (Graphics.boxHeight - 624)/3; 
                        this.updatePosition(); 
        }; 
 
  //----------------------------------------------------------------------------- 
// Sprite_EnemyRex 
//============================================================================= 
 
function Sprite_EnemyRex() { 
    this.initialize.apply(this, arguments); 
} 
 
 
 Sprite_EnemyRex.prototype = Object.create(Sprite_Actor.prototype); 
Sprite_EnemyRex.prototype.constructor = Sprite_EnemyRex; 
 
 Sprite_EnemyRex.prototype.loadBitmap = function(name, hue) { 
           if(this._actor._battleSprite != "")name = this._battleSprite; 
        this.bitmap = ImageManager.loadSvActor(name,hue); 
}; 
 
Sprite_EnemyRex.prototype.setBattler = function(battler) { 
        // this._enemySprite = new Sprite_Enemy(battler); 
                // this._enemySprite._homeX = 0; 
    // this._enemySprite._homeY = 0; 
         
 
    Sprite_Battler.prototype.setBattler.call(this, battler); 
        //this.addChild(this._enemySprite); 
 
 
        var changed = (battler !== this._actor); 
    if (changed) { 
        this._actor = battler; 
                this._enemy = battler; 
        if (battler) { 
            this.setActorHome(battler); 
        } 
        this.startEntryMotion(); 
        this._stateSprite.setup(battler); 
    } 
}; 
 
 
 
Sprite_EnemyRex.prototype.updateBitmap = function() { 
 
        Rexal.ASVE.spriteactorupdatebitmap.call(this); 
        this.updateEffect(); 
        var hue = this._actor.battlerHue(); 
 var name = this._actor.battlerName(); 
  if(this._actor._battleSprite)name = this._actor._battleSprite; 
 
        this._mainSprite.bitmap = ImageManager.loadSvActor(name,hue); 
                this._mainSprite.anchor.x = this._actor._anchor[0]; 
                this._mainSprite.anchor.y = this._actor._anchor[1]; 
        this.flipChildren(); 
}; 
 
Sprite_EnemyRex.prototype.flipChildren = function(){ 
for(var i = 0; i<this.children.length; i++) 
{ 
if(this.children[i].scale.x!=-this._actor._scale)this.children[i].scale.x = -this._actor._scale; 
if(this.children[i].scale.y!=this._actor._scale) this.children[i].scale.y = this._actor._scale; 
} 
 
} 
 
Sprite_EnemyRex.prototype.setupWeaponAnimation = function() { 
         
        Rexal.ASVE.setupweaponanimation.call(this); 
                if(!this._weaponSprite._positioned) 
                {         
                var scale = this._actor._scale+this._actor._weaponScale; 
                this._weaponSprite.x = -this._weaponSprite.x*scale; 
                this._weaponSprite.anchor.x = this._actor._weaponAnchor[0]; 
                this._weaponSprite.anchor.y = this._actor._weaponAnchor[1]; 
                this._weaponSprite._positioned = true; 
                } 
                 
 
}; 
 
Sprite_EnemyRex.prototype.setActorHome = function(battler) { 
                        Rexal.ASVE.setactorhome.call(this); 
                        var dX = Graphics.boxWidth/816; 
                        var dY = Graphics.boxHeight/624; 
         
                        var x = battler.screenX()*dX;  
                        var y = battler.screenY()*dY; 
                         
                        this._homeX = x; 
                        this._homeY = y + (Graphics.boxHeight - 624)/3; 
                        this.updatePosition(); 
        }; 
 
 
 
 
Sprite_EnemyRex.prototype.stepForward = function() { 
   if(!Rexal.ASVE.NoMovement) this.startMove(48, 0, 12); 
}; 
 
Sprite_EnemyRex.prototype.stepBack = function() { 
   if(!Rexal.ASVE.NoMovement) this.startMove(0, 0, 12); 
}; 
 
Sprite_EnemyRex.prototype.retreat = function() { 
    this.startMove(300, 0, 30); 
}; 
 
Sprite_EnemyRex.prototype.initVisibility = function() { 
    this._appeared = this._actor.isAlive(); 
    if (!this._appeared) { 
        this.opacity = 0; 
    } 
}; 
 
Sprite_EnemyRex.prototype.setupEffect = function() { 
         this._enemy = this._actor; 
Sprite_Enemy.prototype.setupEffect.call(this); 
}; 
 
Sprite_EnemyRex.prototype.startEffect = function(effectType) { 
         
    this._effectType = effectType; 
    switch (this._effectType) { 
    case 'appear': 
        this.startAppear(); 
        break; 
    case 'disappear': 
        this.startDisappear(); 
        break; 
    case 'whiten': 
        this.startWhiten(); 
        break; 
    case 'collapse': 
     if(this._actor._collapse)   this.startCollapse(); 
        break; 
    case 'bossCollapse': 
        this.startBossCollapse(); 
        break; 
    case 'instantCollapse': 
        this.startInstantCollapse(); 
        break; 
    } 
    this.revertToNormal(); 
}; 
 
Sprite_EnemyRex.prototype.startAppear = function() { 
Sprite_Enemy.prototype.startAppear.call(this); 
}; 
 
Sprite_EnemyRex.prototype.startDisappear = function() { 
Sprite_Enemy.prototype.startDisappear.call(this); 
}; 
 
Sprite_EnemyRex.prototype.startWhiten = function() { 
Sprite_Enemy.prototype.startWhiten.call(this); 
}; 
 
Sprite_EnemyRex.prototype.startBlink = function() { 
Sprite_Enemy.prototype.startBlink.call(this); 
}; 
 
Sprite_EnemyRex.prototype.startCollapse = function() { 
Sprite_Enemy.prototype.startCollapse.call(this); 
}; 
 
Sprite_EnemyRex.prototype.startBossCollapse = function() { 
Sprite_Enemy.prototype.startBossCollapse.call(this); 
}; 
 
Sprite_EnemyRex.prototype.startInstantCollapse = function() { 
Sprite_Enemy.prototype.startInstantCollapse.call(this); 
}; 
 
Sprite_EnemyRex.prototype.updateEffect = function() { 
 
         
    this.setupEffect(); 
    if (this._effectDuration > 0) { 
        this._effectDuration--; 
        switch (this._effectType) { 
        case 'whiten': 
            this.updateWhiten(); 
            break; 
        case 'appear': 
            this.updateAppear(); 
            break; 
        case 'disappear': 
            this.updateDisappear(); 
            break; 
        case 'collapse': 
       if(this._actor._collapse)     this.updateCollapse(); 
            break; 
        case 'bossCollapse': 
       if(this._actor._collapse)     this.updateBossCollapse(); 
            break; 
        case 'instantCollapse': 
      if(this._actor._collapse)      this.updateInstantCollapse(); 
            break; 
        } 
        if (this._effectDuration === 0) { 
            this._effectType = null; 
        } 
    } 
}; 
 
 
         
Sprite_EnemyRex.prototype.isEffecting = function() { 
Sprite_Enemy.prototype.isEffecting.call(this); 
}; 
 
 
 
Sprite_EnemyRex.prototype.revertToNormal = function() { 
Sprite_Enemy.prototype.revertToNormal.call(this); 
}; 
 
Sprite_EnemyRex.prototype.updateWhiten = function() { 
Sprite_Enemy.prototype.updateWhiten.call(this); 
}; 
 
Sprite_EnemyRex.prototype.updateBlink = function() { 
Sprite_Enemy.prototype.updateBlink.call(this); 
}; 
 
Rexal.ASVE.seupdateappear = Sprite_Enemy.prototype.updateAppear; 
Sprite_Enemy.prototype.updateAppear = function() { 
        Rexal.ASVE.seupdateappear.call(this); 
            this.setHome(this._homeX,this._homeY); 
}; 
 
 
Rexal.ASVE.seupdatedisappear = Sprite_Enemy.prototype.updateDisappear; 
 
Sprite_Enemy.prototype.updateDisappear = function() { 
                Rexal.ASVE.seupdatedisappear.call(this); 
            this.setHome(this._homeX-10,this._homeY); 
}; 
 
 
Sprite_EnemyRex.prototype.updateAppear = function() { 
        Sprite_Enemy.prototype.updateAppear.call(this); 
}; 
 
Sprite_EnemyRex.prototype.updateDisappear = function() { 
        Sprite_Enemy.prototype.updateDisappear.call(this); 
}; 
 
 
 
Sprite_EnemyRex.prototype.updateCollapse = function() { 
Sprite_Enemy.prototype.updateCollapse.call(this); 
}; 
 
Sprite_EnemyRex.prototype.updateBossCollapse = function() { 
Sprite_Enemy.prototype.updateBossCollapse.call(this); 
}; 
 
Sprite_EnemyRex.prototype.updateInstantCollapse = function() { 
Sprite_Enemy.prototype.updateInstantCollapse.call(this); 
}; 
  //----------------------------------------------------------------------------- 
// Spriteset_Battle 
//============================================================================= 
 
Spriteset_Battle.prototype.createEnemies = function() { 
         
    var enemies = $gameTroop.members(); 
    var sprites = []; 
    for (var i = 0; i < enemies.length; i++) { 
        var enemy = enemies[i]; 
        var baseEnemy = $dataEnemies[enemies[i].enemyId()]; 
         
        Rexal.ASVE.processEnemyNoteTag(baseEnemy); 
        Rexal.ASVE.processEnemyData(enemy,baseEnemy); 
         
    if(enemy._animated)   
        { 
                sprites[i] = new Sprite_EnemyRex(enemies[i]); 
                sprites[i].opacity = 0; 
        } 
        else  
                sprites[i] = new Sprite_Enemy(enemies[i]); 
         
    } 
         
    sprites.sort(this.compareEnemySprite.bind(this)); 
    for (var j = 0; j < sprites.length; j++) { 
        this._battleField.addChild(sprites[j]); 
    } 
    this._enemySprites = sprites; 
}; 
 
  //----------------------------------------------------------------------------- 
// Rex Functions 
//============================================================================= 
 
Object.defineProperties(Game_Enemy.prototype, { 
  animated: { get: function() { return this._animated; }, configurable: true }, 
  weapon: { get: function() { return this._weapon; }, configurable: true }, 
  sprite: { get: function() { return this._battleSprite; }, configurable: true }, 
  motion: { get: function() { return this._motion; }, configurable: true }, 
  weaponid: { get: function() { return this._weaponId; }, configurable: true }, 
  breathless: { get: function() { return this._breathless; }, configurable: true }, 
  floating: { get: function() { return this._float; }, configurable: true }, 
  scale: { get: function() { return this._scale; }, configurable: true }, 
  weaponscale: { get: function() { return this._weaponscale; }, configurable: true }, 
  weaponanchor: { get: function() { return this._weaponanchor; }, configurable: true }, 
  anchor: { get: function() { return this._anchor; }, configurable: true }, 
  collapse: { get: function() { return this._collapse; }, configurable: true }, 
  breath: { get: function() { return this._breath; }, configurable: true } 
}); 
 
Rexal.log = function(message,type){ 
if(!Rexal.ASVE.Debug) return; 
if(!type) type = 'log'; 
 
switch (type) { 
         
 
        case 'log' : 
        console.log(message); 
        break; 
         
        case 'info' : 
        console.debug(message); 
        break; 
         
        case 'warn' : 
        console.warn(message); 
        break; 
         
        case 'error' : 
        console.error(message); 
        break; 
} 
 
} 
 
Rexal.ASVE.processEnemyData = function(obj,obj2) { 
if(!obj._equips)obj._equips = []; 
        if(obj2.weapon){        obj._equips[0] = new Game_Item(); 
        obj._equips[0].setObject(obj2.weapon);} 
obj._breath = []; 
obj._weaponAnchor = []; 
obj._anchor = []; 
obj._animated = obj2.animated; 
obj._battleSprite = obj2.battleSprite; 
obj._motion = obj2.motion; 
obj._weaponId = obj2.weaponid; 
obj._breathless = obj2.breathless; 
obj._floating = obj2.floating; 
obj._scale = obj2.scale; 
obj._breath[0] = obj2.breath[0]; 
obj._breath[1] = obj2.breath[1]; 
obj._breath[2] = obj2.breath[2]; 
obj._collapse = obj2.collapse; 
obj._weaponScale = obj2.weaponscale; 
obj._weaponAnchor = obj2.weaponanchor; 
obj._anchor = obj2.anchor; 
} 
 
Rexal.ASVE.processEnemyNoteTag = function(obj) { 
Rexal.log('reading ' + obj.name + '...'); 
obj.battleSprite = ""; 
obj.motion = 'thrust'; 
obj.collapse = Rexal.ASVE.DoCollapse; 
obj.breath = [50,5,25]; 
obj.scale = 1.0; 
obj.weaponscale = 0.0; 
obj.weaponanchor = [.5,1]; 
obj.anchor = [.5,1]; 
 
if(obj == null)return; 
 
                var notedata = obj.note.split(/[\r\n]+/); 
 
                for (var i = 0; i < notedata.length; i++) { 
                var line = notedata[i]; 
                var lines = line.split(': '); 
                 
                switch (lines[0].toLowerCase()) { 
                 
                case '[sv animated]' : 
        obj.animated = true; 
                Rexal.log(obj.name + ' is using SV Battler sprites','info'); 
                break; 
                 
                case 'sv sprite' : 
                obj.animated = true; 
        obj.battleSprite = lines[1]; 
                Rexal.log(obj.name + ' is using SV Battler sprites','info'); 
 
                break; 
                 
                case 'sv motion' : 
        obj.motion = lines[1].toLowerCase(); 
                Rexal.log(obj.name + "'s attack motion is:" + obj.motion,'info'); 
                break; 
                 
                case 'sv weapon' : 
                 obj.weapon = $dataWeapons[parseInt(lines[1])] ; 
                Rexal.log(obj.weapon); 
                break; 
                 
                case '[breathless]' : 
        obj.breathless = true; 
                Rexal.log(obj.name + " is breathless.",'info'); 
                break;         
                 
                case '[float]' : 
                obj.floating = true; 
                Rexal.log(obj.name + " floats.",'info'); 
                break;         
                 
                case '[collapse]' : 
                obj.collapse = true; 
                Rexal.log(obj.name + " can collapse.",'info');                 
                break;         
                 
                case '[no collapse]' : 
                obj.collapse = false; 
                Rexal.log(obj.name + " cannot collapse.",'info');         
                break; 
                 
                case 'breath control' : 
                 
                var lines2 = lines[1].split(','); 
                obj.breath[0] = parseInt(lines2[0]); 
                obj.breath[1] = parseInt(lines2[1]); 
                obj.breath[2] = parseInt(lines2[2]); 
                Rexal.log(obj.name + "'s breath control: " + obj.breath,'info'); 
                break; 
                 
                case 'enemy scale' : 
                obj.scale = parseFloat(lines[1]); 
                Rexal.log(obj.name + " is " + obj.scale +"x bigger than normal.",'info'); 
                break; 
                 
                case 'sv weapon scale' : 
                obj.weaponscale = parseFloat(lines[1])-1; 
                Rexal.log(obj.name + "'s weapon is " + obj.scale +"x bigger than normal.",'info'); 
                break;                 
                 
                case 'sv weapon anchor' : 
                 
                var lines2 = lines[1].split(','); 
                obj.weaponanchor[0] = parseFloat(lines2[0]); 
                obj.weaponanchor[1] = parseFloat(lines2[1]); 
                Rexal.log(obj.name + "'s weapon is anchored to " + obj.weaponanchor[0] +" and " + obj.weaponanchor[1],'info'); 
                break;                 
                 
                case 'sv anchor' : //WIP 
                 
                var lines2 = lines[1].split(','); 
                obj.anchor[0] = parseFloat(lines2[0]); 
                obj.anchor[1] = parseFloat(lines2[1]); 
                Rexal.log(obj.name + " is anchored to " + obj.anchor[0] +" and " + obj.anchor[1],'info'); 
                break;                 
                 
                } 
                 
                         
                } 
                return obj; 
}; |   
 
 
 
 |