Přejít na obsah
  • Vytvořit účet

Programy v Cčku |7|


kgsws

Recommended Posts

kamos tak to neviem ani ja ale C je podla vsetkeho univerzalny jazyk takze ked ho raz vies na PSP pojde to aj na PC a inych masinkach.Nesmies byt narocny musis zacat od malych problemov a postupne to skladat, urcite nenapises z hlavy 100KB zdroju ,hlavne ked nepoznas syntaxu a ucis sa strukturu to proste nejde.

Odkaz ke komentáři
Sdílet na ostatní stránky

  • Odpovědi 67
  • Vytvořeno
  • Poslední odpověď

Nejvíc přispívající

Nejvíce příspěvků v jednom dni

Nejvíc přispívající

MootooSnake zdrojak

#include <pspkernel.h>
#include <pspdebug.h>
#include <pspdisplay.h>
#include <pspctrl.h>
#include <stdio.h> 
#include <stdlib.h>

SceCtrlData pad;
int konec;

PSP_MODULE_INFO("SNAKE", 0, 1, 1);

#define printf pspDebugScreenPrintf
#define color pspDebugScreenSetTextColor
#define backcolor pspDebugScreenSetBackColor
#define gotoXY pspDebugScreenSetXY
int C;
int X[500];
int Y[500];
int L;
int PH;
int PV;
int ziv,life,SC,B,START;
/* ================================= GROOVE =====================================       */
void rast() {B++;
           if (B==5){B=0;L++;SC=SC+5;}
           }
/* ================================= SCORE ========================================  */
void score() {gotoXY(20,0);
             printf ("SCORE= %d",SC);
             gotoXY(40,0);
             printf ("LIVES= %d",life);
            }
/*  ================================        STEP  ===============================       */

void krok(){ for (C=L;C>0;C--)
            { X[C]=X[C-1];
              Y[C]=Y[C-1];
            }
              Y[0]=Y[0]+PH;
              X[0]=X[0]+PV;
          }

/*  ===================================       DIRECTION ============================     */

void smer(){ sceCtrlReadBufferPositive(&pad, 1);
            if(pad.Buttons & PSP_CTRL_START)  START=1;
            if((pad.Buttons & PSP_CTRL_RIGHT) && (PV!=-1)) {PH=0;
            PV=1;}
            if((pad.Buttons & PSP_CTRL_LEFT) && (PV!=1)) {PH=0;
            PV=(0-1);}
            if((pad.Buttons & PSP_CTRL_UP) && (PH!=1))   {PV=0;
            PH=(0-1);}
            if((pad.Buttons & PSP_CTRL_DOWN) && (PH!=-1))   {PV=0;
            PH=1;}
          }

/* ================================       RENDERING  =============================      */


void had() {   for(C=0;C<L-1;C++)
            { gotoXY(X[C],Y[C]);
              backcolor(0x00FF00);  
              color(0x00AA00);
              printf("%");
            }
            gotoXY(X[L],Y[L]);
            backcolor(0x000000);
            color(0xFFFFFF);
            printf(" ");
          }


/* =====================================      CONTACT  ========================         */
void kontakt(){ if(Y[0]<1)  {ziv=1;life--; }
               if(Y[0]>32) {ziv=1;life--; }               
               if(X[0]>67) {ziv=1;life--; }
               if(X[0]<1)  {ziv=1;life--; }
              for (C=L-1;C>0;0) {
              if (X[0]==X[C]){ if(Y[0]==Y[C]) { ziv=1;
              life--;}}        
              C--;}
             }
/* Exit callback */
int exit_callback(int arg1, int arg2, void *common) {
         konec=1;
         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;
}


int main(){
SetupCallbacks();
pspDebugScreenInit();
while(konec==0)
{
 /* ========================sem pride intro + menu================================== */
pspDebugScreenClear ();
life=3;
gotoXY(20,0);
printf ("LAST SCORE= %d",SC); 
SC=0;
START=0;
gotoXY(0,15);
backcolor(0x00FF00);
color(0x000000);
printf("                             MOOTOOSNAKE                                ");
backcolor(0x000000);
while (START!=1)
       { smer();} 

 while (life!=0) 
 {
  /*   ================================ naplnenie buniek===============================*/
  X[0]=32;
  X[1]=33;
  X[2]=34;
  X[3]=35;
  Y[0]=16;
  Y[1]=16;
  Y[2]=16;
  Y[3]=16;
  PH=0;
  PV=-1;
  ziv=0;
  L=3;

  pspDebugScreenClear ();
  while (ziv==0) 
  {
    had();
    smer();
    krok();
    kontakt();
    rast();
    score();  

    sceKernelDelayThread((173-(L*0.5))*1000);
  } // koniec cyklu 1 zivota
 } // koniec hry life=0
} // bolo stlacene HOME a hra vypnuta
sceKernelExitGame();
return 0;
}

inac tie napady to je problem ale teraz riesim krmenie toho hada a levely :bash:

Odkaz ke komentáři
Sdílet na ostatní stránky

To fakt nikdo nepise v C? KGSWS prosim ta pokracuj v tom dalej.

No já sem psal, udělal jsem takovou jednoduchou hru, je to tady:

http://www.console-forum.net/showthread.php?t=3411

Můžu sem postnout i zdroják kdyby někdo chtěl ale je to hodně zprasený :)

A nějak poslední dobou nemám chuť ani nápad....

Odkaz ke komentáři
Sdílet na ostatní stránky

No já sem psal, udělal jsem takovou jednoduchou hru, je to tady:

http://www.console-forum.net/showthread.php?t=3411

Můžu sem postnout i zdroják kdyby někdo chtěl ale je to hodně zprasený :)

A nějak poslední dobou nemám chuť ani nápad....

jj hod ten zdroj prosim ta na forum

Odkaz ke komentáři
Sdílet na ostatní stránky

  • 1 month later...
  • 2 months later...
  • 3 months later...
  • 7 months later...

chci se zeptat...mam všechno zkompilovany, vsechno na správným míste a u vsech prikladu me to vypise toto...

makefile:16: ”/usr/local/pspdev”/psp/sdk/lib/build.mak: No such file or directory

make: *** No rule to make target `”/usr/local/pspdev”/psp/sdk/lib/build.mak'. Stop.

alesekrulezz@alesekrulezzlaptoper:~/Desktop/pspdev-kg$

v techto slozkak to mam ale jak tady vydite linux me proste vyfakuje xD proste tam jakoby asi nejsou ale jsou tam (:

edit: jo a v bashrc mam nastaveny toto

export PSPDEV=”/usr/local/pspdev”

export PSPSDK=”$PSPDEV/psp/sdk”

export PATH=”$PATH:$PSPDEV/bin:$PSPSDK/bin”

takze fakt nvm kde je problem a navic se to potom naloudoval source ~/.bashrc

////Co se takhle podivat na datum?Tri cvrte roku sem nikdo nic nepsal.Jirka71

Odkaz ke komentáři
Sdílet na ostatní stránky

Návštěvník
Toto téma je nyní uzavřeno, a proto není možné odpovídat.

×
×
  • Vytvořit...

Důležitá informace

Tento web používá k poskytování služeb a k analýze návštěvnosti soubory cookies. Více informací naleznete v Zásady ochrany osobních údajů a Pravidla webu