Exemplo n.º 1
0
__attribute__((used)) void gameRun() {
   objects = malloc(sizeof(Entity*) * numEntities);

   playerSprite = malloc(sizeof(Sprite));
   playerSprite->offset.x = 0;
   playerSprite->offset.y = 395;
   playerSprite->size.x = 80;
   playerSprite->size.y = 35;
   playerSprite->speed = 5.0;
   playerSprite->img = IMG_BOSSES;
   playerSprite->numFrames = 3;
   playerSprite->_index = 0;

   playerEntity = makeEntity(ENTITY_PLAYER, playerSprite);
   objects[numEntities - 1] = playerEntity;

   for(int i=0; i<numEntities-1; i++) {
       objects[i] = makeEntity(ENTITY_ENEMY, makeEnemySprite());
   }

   cells = makeCells(getWidth(), getHeight(), 6, 6);

   last = getCurrentTime() / (float)1000.0;
   emscripten_set_main_loop(heartbeat, 0, 0);
}
Exemplo n.º 2
0
void removeObject(Entity *entity) {
    for(int i=0; i<numEntities; i++) {
        if(objects[i] == entity) {
            objects[i] = makeEntity(ENTITY_ENEMY, makeEnemySprite());
        }
    }
}
Exemplo n.º 3
0
void dxfProcessEntities(CodeData* pCodeData) {
    if (pCodeData->code == 0) {
        Entity* pEntity = SAFE_CAST_TO(Entity, stackTop());
        if (pEntity) {
            pEntity->endCounter = pCodeData->counter - 1;
            stackPop();
        }
        
        Section* entities = SAFE_CAST_TO(Section, stackTop());
        assert(entities);
        
        Entity* newEntity = makeEntity(pCodeData->counter);
        strcpy(newEntity->type, pCodeData->data);        
        StackItem newItem = {newEntity, Entity_OBJ};
        stackPush(newItem);
        
        if (entities->pEntityHead) {
            entities->pEntityTail->next = newEntity;
            entities->pEntityTail = newEntity;
        } else {
            entities->pEntityHead = entities->pEntityTail = newEntity; 
        }
        return;
    }

    Entity* entity = SAFE_CAST_TO(Entity, stackTop());
    switch (pCodeData->code) {
    case 5:
        strcpy(entity->handle, pCodeData->data);
        break;
    case 100:
        strcpy(entity->subclass_maker, pCodeData->data);
        break;
    case 8:
        strcpy(entity->layer_name, pCodeData->data);
        break;
    case 6:
        strcpy(entity->linetype_name, pCodeData->data);
        break;
    case 62:
        strcpy(entity->color_number, pCodeData->data);
        break;
    case 370:
        strcpy(entity->line_weight, pCodeData->data);
        break;
    default:
        if (pCodeData->code >= 10 && pCodeData->code <= 18) {
            entity->points_x[entity->numOfPointsX] = atof(pCodeData->data);
            ++ entity->numOfPointsX;        
        } else if (pCodeData->code >= 20 && pCodeData->code <= 28) {
            entity->points_y[entity->numOfPointsY] = atof(pCodeData->data);
            ++ entity->numOfPointsY;    
        } else if (pCodeData->code >= 30 && pCodeData->code <= 38) {
            entity->points_z[entity->numOfPointsZ] = atof(pCodeData->data);
            ++ entity->numOfPointsZ;
        }
    }
}
Exemplo n.º 4
0
Entity EntityManager::create()
{
  unsigned index;

  //if empty indices at the end of the array exist & the number of dead entities < MAX_FREE_INDICES
  if (m_n >= m_maxEntities && m_free_indices.size() == 0)
  {
    assert(false);
  }
  if (m_free_indices.size() >= m_maxFreeIndicies)
  {
    index = m_free_indices.front();
    m_free_indices.pop();
  } else if (m_n < m_maxEntities)
  {
    assert(++m_n <= m_maxEntities);
    index = m_n - 1;
  }
  
  return makeEntity(index, m_generation[index]);
}
Exemplo n.º 5
0
int ClientInterface::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QMainWindow::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: sendMessage(); break;
        case 1: chat((*reinterpret_cast< CLID(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2])),(*reinterpret_cast< QString(*)>(_a[3])),(*reinterpret_cast< ENUM_TYPE(*)>(_a[4]))); break;
        case 2: changeServerInformations((*reinterpret_cast< ServerInformations(*)>(_a[1]))); break;
        case 3: changeClientID((*reinterpret_cast< CLID(*)>(_a[1]))); break;
        case 4: changeClientNickname((*reinterpret_cast< CLID(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 5: showError((*reinterpret_cast< ENUM_TYPE(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 6: changeGameMaster((*reinterpret_cast< CLID(*)>(_a[1]))); break;
        case 7: clientVoted((*reinterpret_cast< CLID(*)>(_a[1])),(*reinterpret_cast< CLID(*)>(_a[2]))); break;
        case 8: connectionEtablished(); break;
        case 9: connectionLost(); break;
        case 10: diceRolled((*reinterpret_cast< CLID(*)>(_a[1])),(*reinterpret_cast< quint16(*)>(_a[2])),(*reinterpret_cast< quint16(*)>(_a[3]))); break;
        case 11: sanctionned((*reinterpret_cast< CLID(*)>(_a[1])),(*reinterpret_cast< ENUM_TYPE(*)>(_a[2])),(*reinterpret_cast< QString(*)>(_a[3]))); break;
        case 12: rollDice(); break;
        case 13: rollSpecialDice(); break;
        case 14: serverName((*reinterpret_cast< QString(*)>(_a[1]))); break;
        case 15: motdChanged((*reinterpret_cast< QString(*)>(_a[1]))); break;
        case 16: gameLaunched(); break;
        case 17: setTitle(); break;
        case 18: playSound((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 19: updatePlayerList(); break;
        case 20: clientJoined((*reinterpret_cast< CLID(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 21: clientLeft((*reinterpret_cast< CLID(*)>(_a[1]))); break;
        case 22: updateGMLabel(); break;
        case 23: updateGMPanel(); break;
        case 24: { bool _r = addLanguage();
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = _r; }  break;
        case 25: { bool _r = addLanguage((*reinterpret_cast< const QString(*)>(_a[1])),(*reinterpret_cast< const QString(*)>(_a[2])));
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = _r; }  break;
        case 26: languageListMenu((*reinterpret_cast< const QPoint(*)>(_a[1]))); break;
        case 27: { bool _r = removeLanguage((*reinterpret_cast< const QString(*)>(_a[1])));
            if (_a[0]) *reinterpret_cast< bool*>(_a[0]) = _r; }  break;
        case 28: removeLanguageMenu(); break;
        case 29: importLanguageList(); break;
        case 30: sendLanguageList(); break;
        case 31: { CLID _r = CLIDFromString((*reinterpret_cast< const QString(*)>(_a[1])));
            if (_a[0]) *reinterpret_cast< CLID*>(_a[0]) = _r; }  break;
        case 32: switchConnectionState(); break;
        case 33: openSettings(); break;
        case 34: openSoundsGUI(); break;
        case 35: aboutUs(); break;
        case 36: aboutServer(); break;
        case 37: openMapEditor(); break;
        case 38: clearMapEditor(); break;
        case 39: mapFlare(); break;
        case 40: resetData(); break;
        case 41: setCSS((*reinterpret_cast< const QString(*)>(_a[1]))); break;
        case 42: setCSS(); break;
        case 43: setInterface((*reinterpret_cast< const QString(*)>(_a[1]))); break;
        case 44: setInterface(); break;
        case 45: playerListMenu((*reinterpret_cast< const QPoint(*)>(_a[1]))); break;
        case 46: actionKick(); break;
        case 47: actionBan(); break;
        case 48: actionVoteGM(); break;
        case 49: actionChangeGM(); break;
        case 50: refresh(); break;
        case 51: textChanged(); break;
        case 52: narrationChanged((*reinterpret_cast< QString(*)>(_a[1]))); break;
        case 53: syncSoundLibs((*reinterpret_cast< QList<SoundLibInformations>(*)>(_a[1]))); break;
        case 54: syncLanguagesList((*reinterpret_cast< QList<QPair<QString,QString> >(*)>(_a[1]))); break;
        case 55: syncDictionariesList((*reinterpret_cast< QStringList(*)>(_a[1]))); break;
        case 56: requestScriptDownload((*reinterpret_cast< QString(*)>(_a[1]))); break;
        case 57: sendScriptToServer((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 58: deleteScript((*reinterpret_cast< QString(*)>(_a[1]))); break;
        case 59: renameScript((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 60: makeEntity((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 61: deleteEntity((*reinterpret_cast< const QString(*)>(_a[1]))); break;
        case 62: injectCode((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 63: scriptToGMMsg((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 64: scriptToOwnerMsg((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 65: scriptActionMsg((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 66: scriptToPlayerMsg((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 67: scriptMsg((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 68: scriptError((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2]))); break;
        case 69: sendMapToServer((*reinterpret_cast< const MapInformations*const(*)>(_a[1])),(*reinterpret_cast< const QMap<QString,RSID>(*)>(_a[2]))); break;
        case 70: addDictionnary(); break;
        case 71: saveGame(); break;
        case 72: loadGame(); break;
        case 73: VOIPRemoveClient(); break;
        case 74: VOIPAddClient(); break;
        case 75: VOIPClientVolume(); break;
        case 76: dataPerSecond((*reinterpret_cast< int(*)>(_a[1])),(*reinterpret_cast< int(*)>(_a[2]))); break;
        default: ;
        }
        _id -= 77;
    }
    return _id;
}
Exemplo n.º 6
0
void QgsSimpleLine3DSymbolHandler::finalize( Qt3DCore::QEntity *parent, const Qgs3DRenderContext &context )
{
  // create entity for selected and not selected
  makeEntity( parent, context, outNormal, false );
  makeEntity( parent, context, outSelected, true );
}