Restored some of the rendering
This commit is contained in:
71
temp/render/player.c
Normal file
71
temp/render/player.c
Normal file
@ -0,0 +1,71 @@
|
||||
/**
|
||||
* Copyright (c) 2021 Dominic Masters
|
||||
*
|
||||
* This software is released under the MIT License.
|
||||
* https://opensource.org/licenses/MIT
|
||||
*/
|
||||
|
||||
#include "player.h"
|
||||
|
||||
void holdemRenderPlayerInit(poker_t *poker) {
|
||||
|
||||
|
||||
GAME_STATE.kagamiTexture = assetTextureLoad("kagami.png");
|
||||
GAME_STATE.kagamiTileset = tilesetCreate(3, 2,
|
||||
GAME_STATE.kagamiTexture->width,
|
||||
GAME_STATE.kagamiTexture->height,
|
||||
0, 0, 0, 0
|
||||
);
|
||||
GAME_STATE.kagamiQuad = quadCreate(0, 0, 0, 0, 0, 1, 1, 1, 1);
|
||||
}
|
||||
|
||||
uint8_t holdemRenderPlayerGetSeatForPlayer(uint8_t player) {
|
||||
switch(player) {
|
||||
case 0x01:
|
||||
return HOLDEM_GAME_SEAT_PLAYER1;
|
||||
case 0x02:
|
||||
return HOLDEM_GAME_SEAT_PLAYER2;
|
||||
case 0x03:
|
||||
return HOLDEM_GAME_SEAT_PLAYER3;
|
||||
case 0x04:
|
||||
return HOLDEM_GAME_SEAT_PLAYER4;
|
||||
default:
|
||||
return HOLDEM_GAME_SEAT_PLAYER0;
|
||||
}
|
||||
}
|
||||
|
||||
void holdemRenderPlayer(uint8_t seat) {
|
||||
float x, z, angle;
|
||||
|
||||
// Determine position
|
||||
angle = HOLDEM_GAME_SEAT_ANGLE(seat);
|
||||
x = sin(angle) * -1;
|
||||
z = cos(angle) * -1;
|
||||
|
||||
// Determine size
|
||||
float w, h;
|
||||
w = 0.6, h = (
|
||||
(float)GAME_STATE.kagamiTileset->divY /
|
||||
(float)GAME_STATE.kagamiTileset->divX
|
||||
) * w;
|
||||
|
||||
// Animation
|
||||
int i = (int32_t)(TIME_STATE.current*10)%GAME_STATE.kagamiTileset->count;
|
||||
quadBuffer(GAME_STATE.kagamiQuad, 0,
|
||||
-w/2, -h/2,
|
||||
GAME_STATE.kagamiTileset->divisions[i].x0,
|
||||
GAME_STATE.kagamiTileset->divisions[i].y1,
|
||||
w/2, h/2,
|
||||
GAME_STATE.kagamiTileset->divisions[i].x1,
|
||||
GAME_STATE.kagamiTileset->divisions[i].y0,
|
||||
0, 0
|
||||
);
|
||||
|
||||
// Render
|
||||
shaderUseTexture(GAME_STATE.shaderWorld, GAME_STATE.kagamiTexture);
|
||||
shaderUsePosition(GAME_STATE.shaderWorld,
|
||||
x, 0.34, z,
|
||||
0, angle, 0
|
||||
);
|
||||
primitiveDraw(GAME_STATE.kagamiQuad, 0, -1);
|
||||
}
|
Reference in New Issue
Block a user