public void insertChargingIfAppropriate(movement m) { if (!isChargeable()) return; if (moveList[0].isFinished()) { chargeLevel++; movement c = new movement(m); c.startVec = moveList[0].endVec; c.endVec = moveList[0].endVec; c.currentChargeLevel = chargeLevel; c.chargeLevels = moveList[0].chargeLevels; c.updateQuats(); moveList.Insert(1, c); } }