Exemple #1
0
void DeleteNames( INDEX iWorld  )
{
	PWORLD world = GetSetMember( WORLD, &g.worlds, iWorld );
	PNAMESET *ppNames = &world->names;
	ForAllInSet( NAME, *ppNames, (FAISCallback)DeleteAName, iWorld );
	DeleteSet( (GENERICSET**)ppNames );
}
Exemple #2
0
void SetDifference (Set S1, Set S2, Set *S3)
{
    int i;
    CopySet(S1,&*S3);
    for (i=1;i<=SetNbElmt(S2);i++)
    {
        if (IsSetMember(*S3,S2.T[i]))
            DeleteSet(&*S3,S2.T[i]);
    }
}
Exemple #3
0
void ResetWorld( INDEX iWorld )
{
	PWORLD world = GetSetMember( WORLD, &g.worlds, iWorld );
	//SectorIDs = 0;
	DeleteSectors( iWorld );// deletes walls also...

	// should probably check that all walls are now now treferences...
	DeleteSet( (PGENERICSET*)&world->walls );
	// should probably check that all lines are now now treferences...
	DeleteSet( (PGENERICSET*)&world->lines );

	DeleteTextures( iWorld );

	DeleteNames( iWorld );

	//if( world->spacetree )
	//{
	//	Log( "Spaces remained on the tree..." );
	//	DeleteSpaceTree( &world->spacetree );
	//}
}
logical pc_SDB_Reference :: StoreAll (DBStructDef *strdefptr )
{
  DBFieldDef *dbflddef = NULL;
  int32       indx0    = strdefptr->get_base_info().get_count() +
                         strdefptr->get_attr_info().get_count();
  int32       count    = indx0 + strdefptr->get_refr_info().get_count();
  logical     term     = NO;
BEGINSEQ
  DeleteSet();                                       SDBCERR
  
  while ( indx0 < count )
    if ( dbflddef = strdefptr->GetEntry(++indx0) )
    {
      ToTop();
      Add();                                         SDBCERR
      if ( Store(dbflddef) )
        term = YES;
    }
Exemple #5
0
void DeleteTextures( INDEX iWorld )
{
	GETWORLD( iWorld );
	ForAllTextures( iWorld, DeleteATexture, (uintptr_t)iWorld );
	DeleteSet( (GENERICSET**)&world->textures );
}