2 * Copyright (c) 2011 Kazuhiko Kobayashi All rights reserved.
4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright notice,
8 * this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above copyright
11 * notice, this list of conditions and the following disclaimer in the
12 * documentation and/or other materials provided with the distribution.
14 * * Neither the name of 'MMDLoaderJME' nor the names of its contributors
15 * may be used to endorse or promote products derived from this software
16 * without specific prior written permission.
18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
22 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28 * POSSIBILITY OF SUCH DAMAGE.
30 package projectkyoto.jme3.mmd;
32 import projectkyoto.mmd.file.PMDSkinData;
38 public class Skin implements Cloneable{
44 boolean updateNeeded = false;
46 public Skin(PMDNode pmdNode, String skinName) {
47 this.pmdNode = pmdNode;
48 this.skinName = skinName;
54 public String getSkinName() {
58 public void setSkinName(String skinName) {
59 this.skinName = skinName;
62 public float getWeight() {
66 public void setWeight(float weight) {
67 if (this.weight != weight) {
69 pmdNode.setUpdateNeeded(true);
70 setUpdateNeeded(true);
74 public PMDSkinData getSkinData() {
78 public void setSkinData(PMDSkinData skinData) {
79 this.skinData = skinData;
82 public boolean isUpdateNeeded() {
86 public void setUpdateNeeded(boolean updateNeeded) {
87 this.updateNeeded = updateNeeded;
91 protected Skin clone() throws CloneNotSupportedException {
92 return (Skin)super.clone();