axllxa
Messages postés88Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention26 décembre 2006
-
18 déc. 2006 à 18:37
Utilisateur anonyme -
19 déc. 2006 à 20:54
Bonjour a tous ,je suis debutant depuis 1 petit mois avec vb2005 expresse.
Je voudrais avoir si possible une explication sur le debut de la programation d'un jeux pacman.
"Au début de votre application, vous allez créer une instance de votre classe cAppli. Dans son constructeur, vous passez en paramètres la Form ou vous affichez votre jeu ainsi que le nom du fichier où se trouve la carte :
Public Sub New(ByVal FormA As Form1, ByVal sMapFile As String)
(si j'ais bien compris je dois insserer ce code apres public classe forme 1, le construcueure se trouve a l'endroit ou se trouve le code?
Faudrais aussi dire ce qui marche pas. Je suis pas devins moi.
Tu dois remplacer sMapFile par le nom de ton fichier (fichier que tu dois mettre dans le répertoire bin de ton application (la ou y'a l'exe))
axllxa
Messages postés88Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention26 décembre 20061 18 déc. 2006 à 19:06
Derniere question la creation de la carte de mon jeux a enregistrer sous format sln (quelque chose comme ça) puige la cree sur world pad pour l'enregistrer sous sln ou je doit utiliser excel? LE .net est bien utilisable ave vb2005 expresse.Merci beaucoup
Bon quelques explication vu que tu débute :
Le .sln, c'est le fichier qui représenta ta "Solution". Cette Solution contient tes différents projets (généralement un)
Les projets sont enregistrer sous .vbproj. Chaque projet contient ensuite des form et autres fichiers (.vb)
Maintenant pourquoi veut-tu utiliser word ou excel ???
Comme tu dis le .net est utilisable avec vs2005 Express.
Visual Studio est prévu pour ca, pour coder du .net
__________
Kenji
Vous n’avez pas trouvé la réponse que vous recherchez ?
axllxa
Messages postés88Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention26 décembre 20061 18 déc. 2006 à 19:40
Au début de votre application, vous allez créer une instance de votre classe cAppli. Dans son constructeur, vous passez en paramètres la Form ou vous affichez votre jeu ainsi que le nom du fichier où se trouve la carte :
Public Sub New(ByVal FormA As Form1, ByVal sMapFile As String)
Dans le constructeur, vous allez lire le fichier contenant la carte et créer les instances de tous les objets dont vous avez besoin
Commençons tout de suite l’exploration très fort avec le NameSpace System.IO pour la lecture de la carte.
Lecture de la carte
Chaque niveau de votre jeu va être stocké dans un fichier texte. Pour concevoir un niveau, utilisez simplement Excel en créant un tableau de 19 lignes par 19 colonnes. Dans chaque cellule, placez des 1 pour les murs, 0 pour du vide, 5 pour l’emplacement de départ du PacMan, 4 pour les fantômes (les méchants), etc. Puis, sauvegardez le tout dans un fichier au format cvs (on dirait une recette de cuisine ! ). Ce qui vous donne un fichier du genre :
axllxa
Messages postés88Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention26 décembre 20061 18 déc. 2006 à 20:32
Je ne doit pas les sauvgarder en forma cvs? si il faut les sauvgarder en forma txt comme tu dit ,je peut utiliser rien que le bloc note ,"non".(pas ac puissant!)
Tu mets l'extension que tu veux, ca sera un fichier externe à ton application.
Tu l'écrit aussi avec ce que tu veux. Ils conseillaient Excel pour la facilité.
axllxa
Messages postés88Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention26 décembre 20061 18 déc. 2006 à 23:34
D'esoler mais quand j'ajoute le code suivent ça ne marche pas(surligner)j'ais enregistrer ma carte au forma texte et je voudrais continuer merci
Dans System.IO, vous avez des classes qui vous permettent de lire et écrire le contenu de fichiers soit au format binaire (BinaryReader, BinaryWriter), soit au format texte (StreamReader, StreamWriter). C’est ce qui nous intéresse ici mais il y a également des classes qui vous permettent d’obtenir des informations sur les fichiers (File) et les dossiers (Directory) et de les renommer, supprimer, déplacer, etc. Ces derniers remplacent les classes de la référence FileSystemObject.
Pour ouvrir votre fichier, il vous faut créer une instance de la classe StreamReader. Celle-ci possède 9 constructeurs différents mais vous allez utiliser le plus simple qui demande juste le nom du fichier :
Dim oStreamR As New System.IO.StreamReader(sMapFile)
Puis pour lire une ligne :
sRead = oStreamR.ReadLine
A la fin de votre fichier, ReadLine retourne un String vide.
axllxa
Messages postés88Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention26 décembre 20061 19 déc. 2006 à 18:05
J'ais une autre question;j'ais bien enregistrer ma carte comme prevue,au forma texte,plasser dans le fichier bin de mon application ou se trouve l'exe et a la place de smapfile j'ais bien mi je nom de fichier ou se trouvre la carte.L'erreure est la suivante:
Impossible de trouver le fichier 'C:\Documents and Settings\FREYERMOUTH\Mes documents\Visual Studio 2005\Projects\WindowsApplicationaaaaaxxxxxxlll\WindowsApplicationaaaaaxxxxxxlll\bin\Debug\jeux'.
J'ais tout bien fais et ça ne marche pas.Faudrait il pas ajouter tout le code pour que ça marche?
MERCI DE TON AIDE!!!
Hum. Ben comme indiquer, il trouve pas.
T'as du te tromper : là il cherche un fichier nommé "jeux" (sans extension sans rien).
Quand tu lui indique ton fichier il faut aussi que tu lui indique l'exension ("jeux.txt')
axllxa
Messages postés88Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention26 décembre 20061 19 déc. 2006 à 19:51
Merci pour ta reponsse .(si je ne met pas l'extension ".text" sa ne risque pas de marcher).
Petit problem pour ajouter le code suivant:
sRead = oStreamR.ReadLine (ou le metre) a chaque fois il est surligner.
J'ais reussi a metre le code suivant :
Public Enum eSquareTypes
Vide = 0
Mur = 1
Point = 5
Bonus = 2
SuperBonus = 3
End Enum
Qui devrait etre apres sRaed=oStreamR.ReadLine.
Avec le code qui suis,je ne vois pas ma carte sur la form de mon application(est ce normale ou il faut atendre d'avoir mi plus de code pour pouvoir aficher la carte),je trouve ça bizard.
Public
Class Form1
Private
Sub Form1_Load(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles
MyBase.Load
Dim oStreamR
As
New System.IO.StreamReader(
"jeux.txt")
Ben, il faut dire que le tuto n'est pas complet.
Ils ne mette que les phases "importantes"
Public Class Form1
Public Enum eSquareTypes
Vide = 0
Mur = 1
Point = 5
Bonus = 2
SuperBonus = 3
End Enum
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim oStreamR As New System.IO.StreamReader("jeux.txt")
Dim LevelMap() As String = oStreamR.ReadToEnd().Split(New Char() {";"c, CChar(vbNewLine)})
For i As Integer = 0 To LevelMap.Length - 1
Dim CaseValue As eSquareTypes = CType(Integer.Parse(LevelMap(i)), eSquareTypes)
'ToDo : Ajout du décore
Next i
oStreamR.Close()
End Sub
axllxa
Messages postés88Date d'inscriptionjeudi 30 novembre 2006StatutMembreDernière intervention26 décembre 20061 19 déc. 2006 à 20:17
J'aimerrais avoir une explication STP :
Public
Class Form1
Private
Sub
Form1_Load(
ByVal
sender
As
System.Object,
ByVal
e
As
System.EventArgs)
Handles
MyBase
.Load
End
Sub
Public
Sub
NEW
(
ByVal
FormA
As
Form1,
ByVal
sMapFile
As
String
)
Dim
oStreamR
As
New
System.IO.StreamReader(
"jeux.txt"
)
End
Sub
Public
Enum
eSquareTypesVide = 0
Mur = 1
Point = 5
Bonus = 2
SuperBonus = 3
End
Enum
End
Class
Comme tu le voi,il y a un problem avec le new de public sub qui se trouve en rouge dans mon code au dessus (form1.vb).Et l'application designer.vb avec le code qui suit:
------------------------------------------------------------------------------
'
' This code was generated by a tool.
' Runtime Version:2.0.50727.42
'
' Changes to this file may cause incorrect behavior and will be lost if