correction of the compilation error
This commit is contained in:
parent
9f258dcf7e
commit
bf10f40b3e
@ -82,7 +82,7 @@ namespace ewol {
|
|||||||
void GroupSet(int32_t state) { m_group = state; };
|
void GroupSet(int32_t state) { m_group = state; };
|
||||||
|
|
||||||
virtual bool GetElementProperty(gameElementGenericProperty_ts &element, int32_t id) {return false;};
|
virtual bool GetElementProperty(gameElementGenericProperty_ts &element, int32_t id) {return false;};
|
||||||
virtual int32_t GetNearestEnemy(coord2D_ts position, int32_t groupId, etkFloat_t& lastQuadDistance) { return -1;};
|
virtual int32_t GetNearestEnemy(coord2D_ts position, etkFloat_t& lastQuadDistance) { return -1;};
|
||||||
/**
|
/**
|
||||||
* @brief Periodicly this fuction will be call tu change property of all the dynamic obbjects
|
* @brief Periodicly this fuction will be call tu change property of all the dynamic obbjects
|
||||||
* @param[in] time Current game time (start at 0)
|
* @param[in] time Current game time (start at 0)
|
||||||
|
@ -56,7 +56,7 @@ void ewol::SceneElement::AddElement(int32_t group, ewol::GameElement* newElement
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
//did not find empty slot :
|
//did not find empty slot :
|
||||||
listAnimatedElements.PushBack(newElement);
|
listAnimatedElements[group].PushBack(newElement);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -67,6 +67,7 @@ bool ewol::SceneElement::GetElementProperty(gameElementGenericProperty_ts &eleme
|
|||||||
}
|
}
|
||||||
if (id.listId >= listAnimatedElements[id.group].Size()) {
|
if (id.listId >= listAnimatedElements[id.group].Size()) {
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
if (NULL == listAnimatedElements[id.group][id.listId]) {
|
if (NULL == listAnimatedElements[id.group][id.listId]) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -77,7 +78,7 @@ bool ewol::SceneElement::GetElementProperty(gameElementGenericProperty_ts &eleme
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
elementIdentifier_ts ewol::SceneElement::GetNearestEnemy(coord2D_ts position, int32_t groupId)
|
ewol::elementIdentifier_ts ewol::SceneElement::GetNearestEnemy(coord2D_ts position, int32_t groupId)
|
||||||
{
|
{
|
||||||
elementIdentifier_ts findId;
|
elementIdentifier_ts findId;
|
||||||
findId.id = -1;
|
findId.id = -1;
|
||||||
@ -85,13 +86,13 @@ elementIdentifier_ts ewol::SceneElement::GetNearestEnemy(coord2D_ts position, in
|
|||||||
findId.listId = -1;
|
findId.listId = -1;
|
||||||
etkFloat_t lastQuadDistance = 9999999999999999.0;
|
etkFloat_t lastQuadDistance = 9999999999999999.0;
|
||||||
int32_t jjj=0;
|
int32_t jjj=0;
|
||||||
while (groupEnemy[jjj] != -1) {
|
while (groupEnemy[groupId][jjj] != -1) {
|
||||||
for (int32_t iii=0; iii<listAnimatedElements[groupEnemy[jjj]].Size(); iii++) {
|
for (int32_t iii=0; iii<listAnimatedElements[groupEnemy[groupId][jjj]].Size(); iii++) {
|
||||||
if (NULL != listAnimatedElements[groupEnemy[jjj]][iii]) {
|
if (NULL != listAnimatedElements[groupEnemy[groupId][jjj]][iii]) {
|
||||||
int32_t newID = listAnimatedElements[groupEnemy[jjj]][iii]->GetNearestEnemy(position, lastQuadDistance);
|
int32_t newID = listAnimatedElements[groupEnemy[groupId][jjj]][iii]->GetNearestEnemy(position, lastQuadDistance);
|
||||||
if (-1 != newID) {
|
if (-1 != newID) {
|
||||||
findId.id = newID;
|
findId.id = newID;
|
||||||
findId.group = groupEnemy[jjj];
|
findId.group = groupEnemy[groupId][jjj];
|
||||||
findId.listId = iii;
|
findId.listId = iii;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -127,7 +128,7 @@ void ewol::SceneElement::Explosion(int32_t group, int32_t type, coord2D_ts posit
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
elementIdentifier_ts ewol::SceneElement::GetElementAtPos(coord2D_ts position, int32_t maxDistanceDetection)
|
ewol::elementIdentifier_ts ewol::SceneElement::GetElementAtPos(coord2D_ts position, int32_t maxDistanceDetection)
|
||||||
{
|
{
|
||||||
elementIdentifier_ts findId;
|
elementIdentifier_ts findId;
|
||||||
findId.id = -1;
|
findId.id = -1;
|
||||||
@ -141,7 +142,7 @@ elementIdentifier_ts ewol::SceneElement::GetElementAtPos(coord2D_ts position, in
|
|||||||
int32_t newID = listAnimatedElements[jjj][iii]->GetNearestEnemy(position, lastQuadDistance);
|
int32_t newID = listAnimatedElements[jjj][iii]->GetNearestEnemy(position, lastQuadDistance);
|
||||||
if (-1 != newID) {
|
if (-1 != newID) {
|
||||||
findId.id = newID;
|
findId.id = newID;
|
||||||
findId.group = groupEnemy[jjj];
|
findId.group = jjj;
|
||||||
findId.listId = iii;
|
findId.listId = iii;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -110,10 +110,12 @@ void ewol::Scene::OnRegenerateDisplay(void)
|
|||||||
m_sceneElement.effects[m_currentCreateId][iii]->Clear();
|
m_sceneElement.effects[m_currentCreateId][iii]->Clear();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (int32_t iii=0; iii<m_sceneElement.listAnimatedElements.Size(); iii++) {
|
for (int32_t jjj=0; jjj<MAX_GROUP_NUMBER; jjj++) {
|
||||||
if (NULL != m_sceneElement.listAnimatedElements[iii]) {
|
for (int32_t iii=0; iii<m_sceneElement.listAnimatedElements[jjj].Size(); iii++) {
|
||||||
// find an empty slot ...
|
if (NULL != m_sceneElement.listAnimatedElements[jjj][iii]) {
|
||||||
m_sceneElement.listAnimatedElements[iii]->Draw(m_sceneElement.animated[m_currentCreateId], m_sceneElement.effects[m_currentCreateId]);
|
// find an empty slot ...
|
||||||
|
m_sceneElement.listAnimatedElements[jjj][iii]->Draw(m_sceneElement.animated[m_currentCreateId], m_sceneElement.effects[m_currentCreateId]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -173,12 +175,14 @@ void ewol::Scene::PeriodicCall(int64_t localTime)
|
|||||||
deltaTime -= CYCLIC_CALL_PERIODE_US;
|
deltaTime -= CYCLIC_CALL_PERIODE_US;
|
||||||
ScenePeriodicCall(m_lastCallTime, CYCLIC_CALL_PERIODE_US);
|
ScenePeriodicCall(m_lastCallTime, CYCLIC_CALL_PERIODE_US);
|
||||||
//EWOL_ERROR("Periodic Call ... " << localTime);
|
//EWOL_ERROR("Periodic Call ... " << localTime);
|
||||||
for (int32_t iii=0; iii<m_sceneElement.listAnimatedElements.Size(); iii++) {
|
for (int32_t jjj=0; jjj<MAX_GROUP_NUMBER; jjj++) {
|
||||||
if (NULL != m_sceneElement.listAnimatedElements[iii]) {
|
for (int32_t iii=0; iii<m_sceneElement.listAnimatedElements[jjj].Size(); iii++) {
|
||||||
// check if the element request an auto Kill ...
|
if (NULL != m_sceneElement.listAnimatedElements[jjj][iii]) {
|
||||||
if (true == m_sceneElement.listAnimatedElements[iii]->Process(m_lastCallTime, CYCLIC_CALL_PERIODE_US, m_sceneElement) ) {
|
// check if the element request an auto Kill ...
|
||||||
delete(m_sceneElement.listAnimatedElements[iii]);
|
if (true == m_sceneElement.listAnimatedElements[jjj][iii]->Process(m_lastCallTime, CYCLIC_CALL_PERIODE_US, m_sceneElement) ) {
|
||||||
m_sceneElement.listAnimatedElements[iii] = NULL;
|
delete(m_sceneElement.listAnimatedElements[jjj][iii]);
|
||||||
|
m_sceneElement.listAnimatedElements[jjj][iii] = NULL;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user