Exemple #1
0
void Physics_addCollisionCallbackOnObjectType(CollisionCallback* callback, ObjectType* type)
{
	if (type->collisionListeners == NULL)
	{
		type->collisionListeners = LinkedList_new();
	}
	
	LinkedList_addLast(type->collisionListeners, callback);
}
Exemple #2
0
void Physics_addCollisionCallbackOnGameObject(CollisionCallback* callback, GameObject* object)
{
	if (object->collisionListeners == NULL)
	{
		object->collisionListeners = LinkedList_new();
	}
	
	LinkedList_addLast(object->collisionListeners, callback);
}
Exemple #3
0
void RenderBatch_addDrawable(RenderBatch* batch, Drawable* drawable)
{
    smug_assert(NULL != batch);
    smug_assert(NULL != drawable);
    smug_assert(Drawable_getTexture(drawable) == batch->texture);
    smug_assert(Drawable_getDataSize(drawable) == batch->objectSize);

    // Add drawable to list
    LinkedList_addLast(batch->drawables, drawable);
}
int maina()
{
    LinkedList* l;

    l = LinkedList_new();

	LinkedListIterator* iter = LinkedList_getIterator(l);
	if (LinkedListIterator_hasMore(iter))
	{
		return 1;
	}
	if (LinkedListIterator_getNext(iter) != NULL)
	{
		return 2;
	}
	if (LinkedListIterator_getSame(iter) != NULL)
	{
		return 3;
	}
	LinkedListIterator_delete(iter);

	int i;
	int* j;
    // Add 100 integer pointers to list.
    for (i = 0; i < 100; i++)
    {
        j = malloc(sizeof(int));
        *j = i;
        LinkedList_addLast(l, j);
    }
	iter = LinkedList_getIterator(l);
	int count = 0;
	while (LinkedListIterator_hasMore(iter))
	{
		j = LinkedListIterator_getNext(iter);
		if (count != *j)
		{
			return 4;
		}
		count++;
		if (j != LinkedListIterator_getSame(iter))
		{
			return 5;
		}
	}
	if (count != 99)
	{
		return 6;
	}
	LinkedListIterator_delete(iter);
    LinkedList_deleteContents(l, intDeleter);
    LinkedList_delete(l);

    return 0;
}
Exemple #5
0
void Physics_addCollisionCheck(int type1, int type2)
{
	TypePair* pair = TypePair_new(type1, type2);
	
	LinkedList_addLast(activeCollisionChecks, pair);
}