コード例 #1
0
void DrawChatters(DrawBuffer *b, const Vec2i offset)
{
	const Tile *tile = &b->tiles[0][0];
	for (int y = 0; y < Y_TILES; y++)
	{
		for (int x = 0; x < b->Size.x; x++, tile++)
		{
			CA_FOREACH(ThingId, tid, tile->things)
				const TTileItem *ti = ThingIdGetTileItem(tid);
				if (ti->kind != KIND_CHARACTER)
				{
					continue;
				}
				DrawChatter(ti, b, offset);
			CA_FOREACH_END()
		}
		tile += X_TILES - b->Size.x;
	}
}
コード例 #2
0
ファイル: draw.c プロジェクト: NSYXin/cdogs-sdl
static void DrawChatters(DrawBuffer *b, Vec2i offset)
{
    const Tile *tile = &b->tiles[0][0];
    for (int y = 0; y < Y_TILES; y++)
    {
        for (int x = 0; x < b->Size.x; x++, tile++)
        {
            CA_FOREACH(ThingId, tid, tile->things)
            const TTileItem *ti = ThingIdGetTileItem(tid);
            if (ti->getActorPicsFunc == NULL)
            {
                continue;
            }
            DrawChatter(ti, b, offset);
            CA_FOREACH_END()
        }
        tile += X_TILES - b->Size.x;
    }
}