mirror of
https://github.com/MapMakersAndProgrammers/alternativa3d-archive.git
synced 2025-10-26 01:49:05 -07:00
48 lines
1.2 KiB
ActionScript
48 lines
1.2 KiB
ActionScript
package com.alternativagame.engine3d.object {
|
|
import com.alternativagame.engine3d.material.Material;
|
|
import com.alternativagame.engine3d.material.SpriteMaterial;
|
|
import com.alternativagame.engine3d.skin.SpriteSkin;
|
|
import flash.utils.Dictionary;
|
|
import com.alternativagame.type.Vector;
|
|
import com.alternativagame.type.RGB;
|
|
import com.alternativagame.engine3d.skin.Skin;
|
|
|
|
public class Sprite3D extends SkinObject3D {
|
|
|
|
private var _state:String = "default";
|
|
|
|
public function Sprite3D(material:SpriteMaterial = null) {
|
|
super(material);
|
|
}
|
|
|
|
override protected function createSkin():Skin {
|
|
return new SpriteSkin(this);
|
|
}
|
|
|
|
public function set state(value:String):void {
|
|
if (_state != value) {
|
|
_state = value;
|
|
updateSkin();
|
|
}
|
|
}
|
|
|
|
public function get state():String {
|
|
return _state;
|
|
}
|
|
|
|
// Клон
|
|
override public function clone():Object3D {
|
|
var res:Sprite3D = new Sprite3D();
|
|
cloneParams(res);
|
|
return res;
|
|
}
|
|
|
|
// Клонировать параметры
|
|
override protected function cloneParams(object:*):void {
|
|
var obj:Sprite3D = Sprite3D(object);
|
|
super.cloneParams(obj);
|
|
obj.state = state;
|
|
}
|
|
|
|
}
|
|
} |