RPG Creator : créez votre MMORPG ou RPG sans aucune connaissance en programmation


Disponible le 4 Juin !




- Jouez à votre jeu sur tablettes tactiles, Smartphones et navigateurs Web
- Personnalisez vos menus
- Dessinez facilement et rapidement vos cartes
- Créez des actions pour le combat A-RPG


www.rpgcreator.net


Heures au format UTC + 1 heure [ Heure d’été ]




Publier un nouveau sujet Répondre au sujet  [ 11 messages ]  Aller à la page 1, 2  Suivant
Auteur Message
 Sujet du message: [c] mini rpg ;)
MessagePublié: 01 Déc 2007, 00:19 

Points d'aide: 0/60

Créations :

Voir ses créations

salut tout le monde,
alors pour commancer, ça fais longtemps ce forum et moi ^^(quel nostalgie Very Happy ,bon ok...)
quand je l'ai quitté j'étais un graphiste et surtout un gros noob :p
me revoici, graphiste et programmeur C (SDL,OpenGL,MySQL)
et donc je suis ici pour vous offrir un source de rpg en c:
Code: Tout sélectionner
#include <stdio.h>
#include <stdlib.h>
#define hauteur 10
#define largeur 10
 
int main(int argc, char *argv[])
{
   int map[100][100]={             {1,1,1,1,1,1,1,1,1,1},
                                   {1,2,2,2,2,4,3,2,2,1},
                                   {1,2,2,2,2,2,2,2,2,1},
                                   {1,2,2,2,2,2,2,2,2,1},
                                   {1,1,1,2,3,2,3,2,2,1},
                                   {1,2,1,2,2,2,2,2,2,1},
                                   {1,2,2,2,2,2,2,2,2,1},
                                   {1,2,2,2,2,2,2,2,4,1},
                                   {1,2,2,2,2,2,2,2,4,1},
                                   {1,1,1,1,1,1,1,1,1,1},
                              };
   int x=1;
   int y=1;
   int j;
   int i;
  
   int direction=1;
   int jeu=1;
  
   int objectif=0;
   int verif_Y=0;
   int verif_X=0;
  
   while(jeu)
   {
   for(j=0;j<hauteur;j++)
   {
     for(i=0;i<hauteur;i++)
     {
       if(j==y && i==x)
       {
                  switch(direction)
                  {
                  case 1:
                  printf("\030");
                  break;
                  case 2:
                  printf("\031");
                  break;
                  case 3:
                  printf("\033");
                  break;
                  case 4:
                  printf("\032");
                  break;
                  }
        }
         else
         {
          switch(map[j][i])
                      {
                         case 1:
                              printf("X");
                         break;
                         case 2:
                              printf(".");
                         break;
                         case 3:
                              printf("#");
                         break;
                         case 4:
                              printf("+");
                         break;
                         case 5:
                              printf("#");
                         break;
                         default:
                              printf(" ");
                         break;
                      }
         }
       }
       printf("
");
     }
     switch(getch() )
            {
            case 72:
                 direction=1;
                 if(map[y-1][x]==5 && map[y-2][x]!=1)
                 {
                  if(map[y-2][x]!=5)
                  {
                   map[y-1][x]=4;map[y-2][x]=3;y--;
                  }
                 }
                 else if(map[y-1][x]==2 || map[y-1][x]==4)
                 {
                 y--;
                 }
                 else if(map[y-1][x]==3 )
                 {
                      if( map[y-2][x]!=1 && map[y-2][x]==2)
                      {
                          map[y-1][x]=2;map[y-2][x]=3;y--;
                      }
                      else if(map[y-1][x]==3 && map[y-2][x]==4)
                      {
                           map[y-2][x]=5;map[y-1][x]=2;y--;
                           }
                 }
            break;
            case 80:
                 direction=2;
                 if(map[y+1][x]==5 && map[y+2][x]!=1)
                 {
                  if(map[y+2][x]!=5)
                  {
                   map[y+1][x]=4;map[y+2][x]=3;y++;
                  }
                 }
                 else if(map[y+1][x]==2 || map[y+1][x]==4)
                 {
                 y++;
                 }
                 else if(map[y+1][x]==3 )
                 {
                    if( map[y+2][x]!=1 && map[y+2][x]==2)
                    {
                        map[y+1][x]=2;map[y+2][x]=3;y++;
                    }
                    else if(map[y+1][x]==3 && map[y+2][x]==4)
                    {
                      map[y+2][x]=5;map[y+1][x]=2;y++;
                      }
                 }
            break;
            case 75:
                 direction=3;
                 if(map[y][x-1]==5 && map[y][x-2]!=1)
                 {
                  if(map[y][x-2]!=5)
                  {
                   map[y][x-1]=4;map[y][x-2]=3;x--;
                  }
                 }
                 else if(map[y][x-1]==2 || map[y][x-1]==4)
                 {
                 x--;
                 }
                 else if(map[y][x-1]==3 )
                 {
                      if( map[y][x-2]!=1 && map[y][x-2]==2)
                      {
                          map[y][x-1]=2;map[y][x-2]=3;x--;
                      }
                      else if(map[y][x-1]==3 && map[y][x-2]==4)
                      {
                          map[y][x-2]=5;map[y][x-1]=2;x--;
                      }
                 }
            break;
            case 77:
                 direction=4;
                 if(map[y][x+1]==5 && map[y][x+2]!=1)
                 {
                  if(map[y][x+2]==5)
                  {
                   map[y][x+1]=4;map[y][x+2]=3;x++;
                  }
                 }
                 else if(map[y][x+1]==2 || map[y][x+1]==4)
                 {
                 x++;
                 }
                 else if(map[y][x+1]==3 )
                 {
                      if( map[y][x+2]!=1 && map[y][x+2]==2)
                      {
                          map[y][x+1]=2;map[y][x+2]=3;x++;
                      }
                      else if(map[y][x+1]==3 && map[y][x+2]==4)
                      {
                          map[y][x+2]=5;map[y][x+1]=2;x++;
                      }
                 }
            break;
            case 27:
                 jeu--;
            break;
            }
     system("cls");
                     objectif=0;
                     for(verif_Y=0;verif_Y<hauteur;verif_Y++)
                     {
                            for(verif_X =0; verif_X <largeur;verif_X++)
                            {
                                        if(map[verif_Y][verif_X]==4)
                                        {
                                        objectif++;
                                        }
                            }
                     }
                     if(objectif==0)
                     {
                     jeu--;
                     }
   }
}

allé enjoy Smile


Haut
  
 
 Sujet du message: Re: [c] mini rpg ;)
MessagePublié: 02 Déc 2007, 01:52 
Villageois (Nv 2)

Inscrit le: 04 Sep 2006, 00:00
Messages: 38
Points d'aide: 0/60

Créations :

Voir ses créations

Ca marche pas ta pas defini : switch(getch() )


Haut
 Profil  
 
 Sujet du message: Re: [c] mini rpg ;)
MessagePublié: 02 Déc 2007, 14:29 

Points d'aide: 0/60

Créations :

Voir ses créations

mon dieu mon dieu mon dieu........
dit, tu sais programmer non?
getch() c'est une fonction de conio.h, et switch c'est une fonction en programmation...
ça ne se définni pas


Haut
  
 
 Sujet du message: Re: [c] mini rpg ;)
MessagePublié: 02 Déc 2007, 15:19 
Roi
Roi
Avatar de l’utilisateur

Inscrit le: 13 Aoû 2006, 00:00
Messages: 2417
Localisation: Montréal, QC
Logiciel(s) préféré(s): RMXP, VS2008
Point(s) Fort(s): Script
Points d'aide: Illimité

Créations :

- Séparation d'inventaire

- Sprite_Text


Voir ses créations

conio.h, ca fait juste pas parti de la bibliothèque standard, donc tout le monde ne l'a pas forcement.

Merci de fournir les librairies adéquats avant de jouer les "true programmer" n33


Haut
 Profil  
 
 Sujet du message: Re: [c] mini rpg ;)
MessagePublié: 02 Déc 2007, 15:44 

Points d'aide: 0/60

Créations :

Voir ses créations

lool true programmeur xD
ok, vous pourez trouver conio ici:
http://sunsite.unc.edu/pub/Linux/libs/ui/linux-conio-1.02.tgz


Haut
  
 
 Sujet du message: Re: [c] mini rpg ;)
MessagePublié: 05 Déc 2007, 17:38 
Bourgeois (Nv 2)

Inscrit le: 12 Aoû 2006, 00:00
Messages: 235
Points d'aide: 37/60

Créations :

Voir ses créations

Conio ? Ça c'est du nom... Je croyais que tu te fichais de lui mais non.
C étonnant biggrin

Citer:
Code: Tout sélectionner
   int x=1;
   int y=1;
   int j;
   int i;
  
   int direction=1;
   int jeu=1;
  
   int objectif=0;
   int verif_Y=0;
   int verif_X=0;


C'est vraiment la peine d'aérer autant le code ?

Code: Tout sélectionner
   int x=1, y=1, j, i;
   int direction=1, jeu=1;  
   int objectif=0, verif_Y=0, verif_X=0;

Je préfère sous cette forme personnellement.
M'enfin après, les goûts et les couleurs, il est vrai qu'on contrôle pas.


Haut
 Profil  
 
 Sujet du message: Re: [c] mini rpg ;)
MessagePublié: 05 Déc 2007, 18:48 
Ancien membre du staff
Ancien membre du staff
Avatar de l’utilisateur

Inscrit le: 15 Sep 2006, 00:00
Messages: 2603
Points d'aide: 35/60

Créations :

Voir ses créations

Hello
Pour ton aide il existe un Zelda en c et en open source. Tu auras déja la gestion du scroll et des sprites + d'autres petits effets
Pas mal non ^^
Par contre je n'ai pas le lien sous la main mais bon comme on dit "google est ton ami" Wink

_________________
Image
Website

Please votez pour moi
http://www.indiedb.com/games/the-fall-of-gods-chapter-1


Haut
 Profil  
 
 Sujet du message: Re: [c] mini rpg ;)
MessagePublié: 09 Déc 2007, 02:44 
Villageois (Nv 2)

Inscrit le: 04 Sep 2006, 00:00
Messages: 38
Points d'aide: 0/60

Créations :

Voir ses créations

Citer:
mon dieu mon dieu mon dieu........
dit, tu sais programmer non?
getch() c'est une fonction de conio.h, et switch c'est une fonction en programmation...
ça ne se définni pas


Way zen mec c'est pas ma faute visual C++ il me dit qu'il y a une faute et je C programmer même si je suis debutant (J'arrive a faire un jeu de pistolet avec des caisse qui tombe avec la SDL c'est pas mal).


Haut
 Profil  
 
 Sujet du message: Re: [c] mini rpg ;)
MessagePublié: 08 Jan 2008, 23:09 

Points d'aide: 0/60

Créations :

Voir ses créations

hahaha, t'y arive ou tu fais copier collé du source de m@teo21 sur le site du zero?
refais le tout seul et t comprendras les betises que tu as dites plus haut Smile

zelda open source j'en ai entendu parler sur un forum, je crois que c'étais comment ça marche :O ?!
et mon code je suis actuelement en train de le remasteriser :P franglish powa !! avec des multithreads ^^(je viens tout just de l'apprendre, je m'amuse comme un fou lool) et donc le jeu seras plus rapide et donc le game play plus agréable ^^.
désolé pour le temps de fou que j'ais mis ^^'..


Haut
  
 
 Sujet du message: Re: [c] mini rpg ;)
MessagePublié: 13 Jan 2008, 01:17 
Villageois (Nv 2)

Inscrit le: 04 Sep 2006, 00:00
Messages: 38
Points d'aide: 0/60

Créations :

Voir ses créations

♪ J'y arrive cherche bien ya pas de truc avec un pistolet j'ai juste prit L'IMAGE viseur mais aprés j'ai tous fais (le cadrage et tous c'est truc je l'ai fais tous seul)

♪ et toi tu t'est aider d'un tuto dans le site du zero pour ton "jeu" (si on peu appeller ca comme ca mais pas sur) je l'ai deja lu ce tuto et c'est un jolie copier-coller tu ta fais

♪ les projet en console c'est trés moche

♪ et t'est pas meilleur que moi test de faire un jeu 3D avec des beau perso (pas comme ton avatar, le mien sort d'un site et je l'aime pas et pas un carré qui avance)

♪ et au lieu de te la peter fallais peut être finir ton code s'il manque une librairie ca peut pas marcher.

♪ (c'est pas parce que tas 1 an de plus que moi que tu c'est faire plus de chose et que tu doit te foutre de moi et cher pas si tu sait mais un tableau ca prend pas mal de place au lieu de faire un [100] [100] fais plutôt un [10] [10], perso je programme en TI-Basic / C/C++, XHTML, CSS, je fais du linux et un peu de Java.

true programmeur
: je peut pas dire que j'en suis un mais toi non plus.

EDIT : Tas des librairie pour faire des jeu en console mieu et ta aussi de tac tic au lieu de t'emmerder à a faire un copier coller du site du zero et comme je suis pas de mauvaise fois comme toi je te passe une belle librairie http://ftp.gnu.org/pub/gnu/ncurses/ (si tu prend la librairie, prend la ncurses-5.6.tar.gz)

Et aussi c'est pas obliger que je conaisse parfaitement toute les fonctions tu connaisais ca toi (avant de lire la signature de la dernière fonction sinon c'est simple a comprendre) ? :
Code: Tout sélectionner
HANDLE handle=GetStdHandle(STD_OUTPUT_HANDLE);
COORD pos={0,0};
SetConsoleCursorPosition(handle,pos);


C'est dans windows.h


Haut
 Profil  
 
Afficher les messages depuis:  Trier par  
Publier un nouveau sujet Répondre au sujet  [ 11 messages ]  Aller à la page 1, 2  Suivant

Heures au format UTC + 1 heure [ Heure d’été ]


Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas insérer de pièces jointes dans ce forum

Rechercher pour:
Sauter vers:  
cron
RPG Creative Forum version 5 ; Tous droits réservés
phpBB Group (Traduit par Xaphos)
Optimisé pour une résolution 1024*728