abych aj ja prispel svojou troskou do mlyna tak tu je haluz co som zbuchal teraz za 20 minut, jkod je trosku mozno neprehladny je vazne robene narychlo ale momentalne sa idem venovat ramake hry HACK a na tu sa tesim ked bude hotova, len este nefim ci bude v textovom alebo v grafickom rezime to este uvidime
#include <pspkernel.h>
#include <pspdebug.h>
#include <pspdisplay.h>
#include <pspctrl.h>
#include <stdio.h>
#include <stdlib.h>
PSP_MODULE_INFO("HeWo", 0, 1, 1);
#define printf pspDebugScreenPrintf
#define color pspDebugScreenSetTextColor
#define backcolor pspDebugScreenSetBackColor
#define gotoXY pspDebugScreenSetXY
/* Exit callback */
int exit_callback(int arg1, int arg2, void *common) {
sceKernelExitGame();
return 0;
}
/* Callback thread */
int CallbackThread(SceSize args, void *argp) {
int cbid;
cbid = sceKernelCreateCallback("Exit Callback", exit_callback, NULL);
sceKernelRegisterExitCallback(cbid);
sceKernelSleepThreadCB();
return 0;
}
/* Sets up the callback thread and returns its thread id */
int SetupCallbacks(void) {
int thid = 0;
thid = sceKernelCreateThread("update_thread", CallbackThread, 0x11, 0xFA0, 0, 0);
if(thid >= 0) {
sceKernelStartThread(thid, 0, 0);
}
return thid;
}
SceCtrlData pad;
int bludisko[68][32];
int x,y;
int px,py;
int koniec=0;
int random(int high)
{
return (rand() % (high+1));
}
void ukazhraca(int i,int j,int pi, int pj) // ma na starosti samotne prekreslovanie hraca
{
int obr=1;
gotoXY(pi,pj);
printf(" ");
gotoXY(i,j);
printf("%c",obr);
gotoXY(0,0);
}
void inic(void)
{
int rnd=0;
for(x=0;x<=67;x++)
{
bludisko[x][0]=219;
bludisko[x][31]=219;
}
for(y=0;y<=31;y++)
{
bludisko[0][y]=219;
bludisko[67][y]=219;
}
for(y=1;y<=30;y++)
{
for(x=1;x<=66;x++)
{
rnd=random(100);
if (rnd<=15) bludisko[x][y]=219;
if (rnd<=0) bludisko[x][y]=188;
}
}
bludisko[68][32]=0;
bludisko[66][31]=0;
bludisko[65][31]=0;
}
void ukazbludisko(void)
{
int i,j;
for(i=0;i<=31;i++)
{
for(j=0;j<=67;j++)
{
printf("%c",bludisko[j][i]);
}
}
ukazhraca(x,y,px,py);
}
void smrt(void)
{
int slucka=0;
gotoXY(5,5);
printf("ZOMREL SI STUPIL SI NA PASCU");
gotoXY(5,7);
printf("aby si mohol pokracovat stlac O");
while (slucka!=1)
{
sceCtrlReadBufferPositive(&pad, 1);
if(pad.Buttons & PSP_CTRL_CIRCLE) slucka=1;
}
px=1;
py=1;
x=1;
y=1;
gotoXY(0,0);
}
void vyhra(void)
{
int slucka=0;
gotoXY(5,5);
printf("GRATULUJEME VYHRAL SI");
gotoXY(5,7);
printf("aby si mohol pokracovat stlac O");
while (slucka!=1)
{
sceCtrlReadBufferPositive(&pad, 1);
if(pad.Buttons & PSP_CTRL_CIRCLE) slucka=1;
}
koniec=1;
}
void kam(void)
{
sceCtrlReadBufferPositive(&pad, 1);
if(pad.Buttons & PSP_CTRL_CROSS) koniec=1;
if(pad.Buttons & PSP_CTRL_RIGHT)
{
px=x;
py=y;
x++;
if (bludisko[x][y]==219) x=px;
if (bludisko[x][y]==188) smrt();
ukazbludisko();
}
if(pad.Buttons & PSP_CTRL_LEFT)
{
px=x;
py=y;
x--;
if (bludisko[x][y]==219) x=px;
if (bludisko[x][y]==188) smrt();
ukazbludisko();
}
if(pad.Buttons & PSP_CTRL_UP)
{
px=x;
py=y;
y--;
if (bludisko[x][y]==219) y=py;
if (bludisko[x][y]==188) smrt();
ukazbludisko();
}
if(pad.Buttons & PSP_CTRL_DOWN)
{
px=x;
py=y;
y++;
if (bludisko[x][y]==219) y=py;
if (bludisko[x][y]==188) smrt();
ukazbludisko();
}
if ((x==66)&(y==31)) vyhra();
}
int main() {
SetupCallbacks();
pspDebugScreenInit();
inic();
px=1;
py=1;
x=1;
y=1;
ukazbludisko();
while (koniec!=1)
{
kam();
}
sceKernelExitGame();
return 0;