animation doesn't work
This commit is contained in:
parent
cfd1a0a062
commit
992befeb45
@ -14,7 +14,7 @@
|
||||
#include "main_code.h"
|
||||
|
||||
#ifndef TARGET_IOS
|
||||
boost::shared_ptr<TMyApplication> App(new TMyApplication);
|
||||
std::shared_ptr<TMyApplication> App = std::make_shared<TMyApplication>();
|
||||
#endif
|
||||
|
||||
bool animPaused = false;
|
||||
@ -115,48 +115,6 @@ void TMyApplication::InnerInit()
|
||||
|
||||
Match3Controller.Match3Field = std::make_shared<TMatch3Field>(Match3Controller);
|
||||
|
||||
|
||||
|
||||
/*
|
||||
|
||||
ResourceManager->GUIManager.AddWidgetAndFill(boost::shared_ptr<TInstancingWidgetAncestor>(new TSquareButton),
|
||||
"ololo", "group1",
|
||||
boost::shared_ptr<TTriangleListFillerAncestor>(new TSquareButtonTriangleListFiller(vec2(100, 100), vec2(200, 200), "button_normal", "button_pressed")));
|
||||
|
||||
|
||||
ResourceManager->GUIManager.AddWidgetAndFill(boost::shared_ptr<TInstancingWidgetAncestor>(new TSquareStatic),
|
||||
"Background", "group1",
|
||||
boost::shared_ptr<TSquareStaticTriangleListFiller>(new TSquareStaticTriangleListFiller(vec2(0, 0), vec2(800, 480), "cave_hd")));
|
||||
|
||||
|
||||
ResourceManager->GUIManager.AddWidget(boost::shared_ptr<TInstancingWidgetAncestor>(new TMatch3Field(Match3Controller)),
|
||||
"match3", "group1");
|
||||
|
||||
ResourceManager->GUIManager.MoveWidget("ololo", vec2(-100, 0));
|
||||
|
||||
TOnClickTest OnClickTest;
|
||||
*/
|
||||
|
||||
|
||||
//ResourceManager->GUIManager.GetOnClickSignal("ololo").connect(OnClickTest);
|
||||
|
||||
//testAnimObject.Serialize(FileToPropertyTree("test_animation_xml.xml"));
|
||||
|
||||
//ResourceManager->HalibutAnimationManager.AddAnimationObject("test_anim", testAnimObject);
|
||||
|
||||
//ResourceManager->HalibutAnimationManager.StartAnimation("test_anim");
|
||||
|
||||
|
||||
//ResourceManager->ShaderManager.AddShader("DefaultShader", "shader_vertex.txt", "shader_fragment.txt");
|
||||
/*HalibutRender->PushShader("DefaultShader");
|
||||
|
||||
ResourceManager->TexList.AddTexture(CONST_CONSOLE_TEX_NAME);
|
||||
|
||||
ResourceManager->FontManager.AddFont("droid_sans14", "droid_sans14_font_bitmap.bmp32", "droid_sans14_font_charmap.txt");
|
||||
ResourceManager->FontManager.PushFont("droid_sans14");*/
|
||||
|
||||
//glDisable(GL_CULL_FACE);
|
||||
|
||||
}
|
||||
|
||||
//What to do on deinit
|
||||
@ -197,13 +155,10 @@ void TMyApplication::InnerOnTapUp(Eigen::Vector2f p) {
|
||||
}
|
||||
Match3Controller.Match3Field.get()->OnTapUp(p);
|
||||
}
|
||||
void TMyApplication::InnerOnTapUpAfterMove(Eigen::Vector2f p) {
|
||||
//Match3Controller.Match3Field.get()->
|
||||
}
|
||||
|
||||
void TMyApplication::InnerOnMove(Eigen::Vector2f pos, Eigen::Vector2f shift) {
|
||||
if (!Match3Controller.Match3Field.get()->CheckClick(pos)) {
|
||||
return;
|
||||
}
|
||||
Match3Controller.Match3Field.get()->OnMove(pos);
|
||||
// if (!Match3Controller.Match3Field.get()->CheckClick(pos)) {
|
||||
// return;
|
||||
// }
|
||||
// Match3Controller.Match3Field.get()->OnMove(pos);
|
||||
}
|
@ -64,13 +64,11 @@ public:
|
||||
|
||||
virtual void InnerOnTapUp(Eigen::Vector2f p) override;
|
||||
|
||||
virtual void InnerOnTapUpAfterMove(Eigen::Vector2f p) override;
|
||||
|
||||
virtual void InnerOnMove(Eigen::Vector2f pos, Eigen::Vector2f shift) override;
|
||||
};
|
||||
|
||||
#ifndef TARGET_IOS
|
||||
extern boost::shared_ptr<TMyApplication> App;
|
||||
extern std::shared_ptr<TMyApplication> App;
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
@ -54,7 +54,7 @@ void TMatch3FieldParams::Serialize(boost::property_tree::ptree& propertyTree)
|
||||
ChipMatchTime = propertyTree.get<size_t>("Match3Params.ChipMatchTime");
|
||||
ChipTypeCount = propertyTree.get<size_t>("Match3Params.ChipTypeCount");
|
||||
|
||||
BOOST_FOREACH(boost::property_tree::ptree::value_type &v, propertyTree.get_child("Match3Params.ChipList"))
|
||||
for (boost::property_tree::ptree::value_type &v : propertyTree.get_child("Match3Params.ChipList"))
|
||||
{
|
||||
boost::property_tree::ptree& p = v.second.get_child("");
|
||||
chipTemplateParams.Serialize(p);
|
||||
@ -181,14 +181,14 @@ Eigen::Vector2f TMatch3Logic::GetExpectedLeftBottomPos(size_t x, size_t y)
|
||||
|
||||
void TMatch3Logic::StartAnimateChip(size_t x, size_t y)
|
||||
{
|
||||
//return;
|
||||
SE::ResourceManager->HalibutAnimationManager.StartAnimation(ChipMatrix[x][y].AnimName);
|
||||
}
|
||||
|
||||
void TMatch3Logic::StopAnimateChip(size_t x, size_t y)
|
||||
{
|
||||
|
||||
//return;
|
||||
SE::ResourceManager->HalibutAnimationManager.StopAnimation(ChipMatrix[x][y].AnimName);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -413,8 +413,6 @@ void TMatch3Logic::MoveVertexListShiftBackWithoutAnimation(SE::TRenderPairList::
|
||||
|
||||
void TMatch3Logic::InnerAddChipToUp(size_t colNum, int chipType, Eigen::Vector2f spawnPos, TChip::TChipState chipState)
|
||||
{
|
||||
size_t yPos = ChipMatrix[colNum].size();
|
||||
|
||||
Eigen::Vector2f posFrom = spawnPos;
|
||||
Eigen::Vector2f posTo = posFrom + Eigen::Vector2f(Match3FieldParams.CellWidth, Match3FieldParams.CellHeight);
|
||||
|
||||
@ -448,9 +446,9 @@ void TMatch3Logic::InnerAddChipToUp(size_t colNum, int chipType, Eigen::Vector2f
|
||||
|
||||
void TMatch3Logic::AddChipToUp(size_t colNum, int chipType, Eigen::Vector2f spawnPos, TChip::TChipState chipState)
|
||||
{
|
||||
InnerAddChipToUp(colNum, chipType, spawnPos, chipState);
|
||||
size_t yPos = ChipMatrix[colNum].size();
|
||||
|
||||
size_t yPos = ChipMatrix[colNum].size() - 1; //?
|
||||
InnerAddChipToUp(colNum, chipType, spawnPos, chipState);
|
||||
|
||||
ReplaceAnimation(Eigen::Vector2i(colNum, yPos));
|
||||
|
||||
@ -484,7 +482,7 @@ void TMatch3Logic::InsertEmptyChip(size_t colNum, size_t rowNum, int chipType)
|
||||
ReplaceAnimation(Eigen::Vector2i(colNum, rowNum));
|
||||
|
||||
|
||||
triangleList.NeedRefreshBuffer = true;
|
||||
//triangleList.NeedRefreshBuffer = true;
|
||||
|
||||
Eigen::Vector2f pos = GetExpectedLeftBottomPos(colNum, rowNum);
|
||||
|
||||
@ -565,8 +563,8 @@ void TMatch3Logic::UpdateChipSwapping(size_t dt)
|
||||
chip2.RenderPair->second.Data.Vec3CoordArr[SE::CONST_STRING_POSITION_ATTRIB][chip2.VertexListShift + k] += shiftChip2;
|
||||
}
|
||||
|
||||
chip1.RenderPair->second.NeedRefreshBuffer = true;
|
||||
chip2.RenderPair->second.NeedRefreshBuffer = true;
|
||||
//chip1.RenderPair->second.NeedRefreshBuffer = true;
|
||||
//chip2.RenderPair->second.NeedRefreshBuffer = true;
|
||||
}
|
||||
|
||||
|
||||
@ -655,7 +653,7 @@ void TMatch3Logic::UpdateChipPosition(size_t dt)
|
||||
}
|
||||
|
||||
|
||||
chip.RenderPair->second.NeedRefreshBuffer = true;
|
||||
//chip.RenderPair->second.NeedRefreshBuffer = true;
|
||||
|
||||
for (size_t k = j + 1; k < ChipMatrix[i].size(); k++)
|
||||
{
|
||||
@ -671,7 +669,7 @@ void TMatch3Logic::UpdateChipPosition(size_t dt)
|
||||
chipAbove.ChipState = TChip::CS_FALLING;
|
||||
chipAbove.SetLeftBottomPos(chip.GetLeftBottomPos() + Eigen::Vector2f(0, Match3FieldParams.CellHeight));
|
||||
chipAbove.Velocity = chip.Velocity;
|
||||
chipAbove.RenderPair->second.NeedRefreshBuffer = true;
|
||||
//chipAbove.RenderPair->second.NeedRefreshBuffer = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -715,9 +713,10 @@ void TMatch3Logic::TryMatchAllChips()
|
||||
|
||||
void TMatch3Logic::DestroyChip(Eigen::Vector2i p)
|
||||
{
|
||||
ChipMatrix[p[0]][p[1]].RenderPair->second.NeedRefreshBuffer = true;
|
||||
//ChipMatrix[p[0]][p[1]].RenderPair->second.NeedRefreshBuffer = true;
|
||||
|
||||
SE::ResourceManager->HalibutAnimationManager.DeleteAnimationObject(ChipMatrix[p[0]][p[1]].AnimName);
|
||||
|
||||
|
||||
ChipMatrix[p[0]][p[1]].RenderPair->second.Data.Vec3CoordArr[SE::CONST_STRING_POSITION_ATTRIB].erase(
|
||||
ChipMatrix[p[0]][p[1]].RenderPair->second.Data.Vec3CoordArr[SE::CONST_STRING_POSITION_ATTRIB].begin() + ChipMatrix[p[0]][p[1]].VertexListShift,
|
||||
@ -761,14 +760,14 @@ void TMatch3Logic::ChangeChipType(Eigen::Vector2i p)
|
||||
|
||||
MoveVertexListShiftBack(chip.RenderPair, chip.VertexListShift);
|
||||
|
||||
chip.RenderPair->second.NeedRefreshBuffer = true;
|
||||
//chip.RenderPair->second.NeedRefreshBuffer = true;
|
||||
|
||||
chip.ChipType = newChipType;
|
||||
|
||||
RenderPairIteratorVector[newChipType]->second.Data.Vec3CoordArr[SE::CONST_STRING_POSITION_ATTRIB].insert(RenderPairIteratorVector[newChipType]->second.Data.Vec3CoordArr[SE::CONST_STRING_POSITION_ATTRIB].end(), vertexCoordSubVec.begin(), vertexCoordSubVec.end());
|
||||
RenderPairIteratorVector[newChipType]->second.Data.Vec2CoordArr[SE::CONST_STRING_TEXCOORD_ATTRIB].insert(RenderPairIteratorVector[newChipType]->second.Data.Vec2CoordArr[SE::CONST_STRING_TEXCOORD_ATTRIB].end(), texCoordSubVec.begin(), texCoordSubVec.end());
|
||||
|
||||
RenderPairIteratorVector[newChipType]->second.NeedRefreshBuffer = true;
|
||||
//RenderPairIteratorVector[newChipType]->second.NeedRefreshBuffer = true;
|
||||
|
||||
chip.RenderPair = RenderPairIteratorVector[newChipType];
|
||||
chip.VertexListShift = RenderPairIteratorVector[newChipType]->second.Data.Vec3CoordArr[SE::CONST_STRING_POSITION_ATTRIB].size() - 6;
|
||||
@ -910,7 +909,7 @@ void TMatch3Logic::SwapChips(Eigen::Vector2i p1, Eigen::Vector2i p2, bool isRetu
|
||||
Eigen::Vector2f chip2PosFrom(LeftBottomPosField[0] + p2[0]*Match3FieldParams.CellWidth, LeftBottomPosField[1] + p2[1]*Match3FieldParams.CellHeight);
|
||||
ChipSwappingPairVector.push_back(TChipSwappingPair(p1, p2, chip1PosFrom, chip2PosFrom));
|
||||
|
||||
(ChipSwappingPairVector.end() - 1)->IsReturning = isReturning;
|
||||
ChipSwappingPairVector.back().IsReturning = isReturning;
|
||||
|
||||
ChipMatrix[p1[0]][p1[1]].ChipState = TChip::CS_SWAPPING;
|
||||
ChipMatrix[p2[0]][p2[1]].ChipState = TChip::CS_SWAPPING;
|
||||
@ -932,7 +931,7 @@ void TMatch3Logic::ResetChipPos(Eigen::Vector2i p)
|
||||
chip.RenderPair->second.Data.Vec3CoordArr[SE::CONST_STRING_POSITION_ATTRIB][chip.VertexListShift + i] = vertexCoordVec[i];
|
||||
}
|
||||
|
||||
chip.RenderPair->second.NeedRefreshBuffer = true;
|
||||
//chip.RenderPair->second.NeedRefreshBuffer = true;
|
||||
|
||||
|
||||
}
|
||||
@ -973,7 +972,7 @@ void TMatch3Logic::UpdateLogic(size_t dt)
|
||||
|
||||
std::vector<Eigen::Vector3f> vertexCoordArr = SE::MakeVertexCoordVec(centerPos - (1.f - i->T)*halfPos, centerPos + (1.f - i->T)*halfPos, ZLEVEL);
|
||||
|
||||
for (int t = 0; t < 6; t++)
|
||||
for (int t = 0; t < 6; t++)
|
||||
{
|
||||
ChipMatrix[p[0]][p[1]].RenderPair->second.Data.Vec3CoordArr[SE::CONST_STRING_POSITION_ATTRIB][ChipMatrix[p[0]][p[1]].VertexListShift + t] = vertexCoordArr[t];
|
||||
}
|
||||
@ -994,6 +993,7 @@ void TMatch3Logic::UpdateLogic(size_t dt)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
RemoveBubbles();
|
||||
}
|
||||
|
||||
@ -1168,7 +1168,7 @@ void TMatch3Field::FillBasicChipMatrixAndTriangleList()
|
||||
|
||||
for (SE::TRenderPairList::iterator i = TriangleListVector.begin(); i != TriangleListVector.end(); ++i)
|
||||
{
|
||||
i->second.NeedRefreshBuffer = false;
|
||||
//i->second.NeedRefreshBuffer = false;
|
||||
i->second.RefreshBuffer();
|
||||
}
|
||||
|
||||
@ -1192,14 +1192,11 @@ void TMatch3Field::Update(size_t dt)
|
||||
|
||||
TMatch3Logic::UpdateLogic(dt);
|
||||
|
||||
|
||||
SE::TRenderPairList::iterator i;
|
||||
for (i = TriangleListVector.begin(); i != TriangleListVector.end(); ++i)
|
||||
{
|
||||
if (i->second.NeedRefreshBuffer)
|
||||
{
|
||||
i->second.RefreshBuffer();
|
||||
}
|
||||
i->second.RefreshBuffer();
|
||||
|
||||
}
|
||||
|
||||
int y = 6;
|
||||
|
@ -4,6 +4,11 @@ Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
VisualStudioVersion = 14.0.25123.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Crystal of Rhylil", "Crystal of Rhylil\Crystal of Rhylil.vcxproj", "{0080A3E1-DFBF-4557-B198-E6D5D7724393}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{534F100C-E611-43BF-B6F3-AD9F9925F703} = {534F100C-E611-43BF-B6F3-AD9F9925F703}
|
||||
{03736B28-58F6-4AEA-9D37-B6AC4F5F853B} = {03736B28-58F6-4AEA-9D37-B6AC4F5F853B}
|
||||
{A05BADE1-D792-4620-9928-13A7AFD0F195} = {A05BADE1-D792-4620-9928-13A7AFD0F195}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Engine", "..\..\tes-engine\windows\Engine\Engine.vcxproj", "{534F100C-E611-43BF-B6F3-AD9F9925F703}"
|
||||
EndProject
|
||||
|
@ -7,7 +7,7 @@
|
||||
#include "boost/foreach.hpp"
|
||||
|
||||
|
||||
extern boost::shared_ptr<TMyApplication> App;
|
||||
extern std::shared_ptr<TMyApplication> App;
|
||||
|
||||
int APIENTRY WinMain(HINSTANCE hCurrentInst, HINSTANCE hPreviousInst,
|
||||
LPSTR lpszCmdLine, int nCmdShow)
|
||||
|
Loading…
Reference in New Issue
Block a user