package fight3D;
import javax.media.j3d.BranchGroup;
import framework.model3D.Object3D;
/**
* プレイヤーの体の中の攻撃に使用している部分
* @author 新田直也
*
*/
public class AttackingPart implements Attackable {
private String partName = null;
private Player owner;
private boolean fActive = true;
private long timeLag = 0; // 攻撃が効き始めるまでの時間(発生時間)
//コンストラクタ
public AttackingPart(String pn, Player o, long t){
partName = pn;
owner = o;
timeLag = t;
}
@Override
//攻撃力を返す
public int getAP() {
// TODO Auto-generated method stub
return owner.character.getPower();
}
@Override
//物体(3次元)の形を教える
public Object3D getBody() {
// TODO Auto-generated method stub
return owner.body;
}
@Override
public String getPartName() {
// TODO Auto-generated method stub
return partName;
}
@Override
//誰が攻撃したか(有効な攻撃)
public Player getOwner() {
// TODO Auto-generated method stub
return owner;
}
@Override
//攻撃する物(体の一部や武器)と一緒に自身も動くことができるか
public boolean isMovable() {
// TODO Auto-generated method stub
return false;
}
//攻撃し終わったら、消える
void onEndAnimation() {
disappear();
}
//存在しているか
public boolean isAlive() {
return fActive;
}
@Override
public void appear() {
// TODO Auto-generated method stub
fActive = true;
}
@Override
public void disappear() {
// TODO Auto-generated method stub
fActive = false;
}
@Override
public boolean isActivate() {
// TODO Auto-generated method stub
return (owner.animation.time >= timeLag);
}
}