NAMESPACE

Résolu
Signaler
Messages postés
88
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
26 décembre 2006
-
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
-
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?

22 réponses

Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
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))






__________
Kenji
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
Salut,

Oui c'est celà. Mais tu aurais pu télécharger n'importe que code .net pour en avoir la confirmation.






__________
Kenji
Messages postés
88
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
26 décembre 2006
1
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
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
Hein, qui que quoi ??? Comprend rien moi.

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
Messages postés
88
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
26 décembre 2006
1
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 :


1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1
1;5;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;4;1
1;0;1;1;1;0;1;0;1;0;1;0;1;0;1;1;1;0;1


1;6;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;4;1
1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1
Messages postés
88
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
26 décembre 2006
1
Je te l'envoie comme ça ,sa serra plus simple,merci de ta comprehention
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
Ben je te conseil de suivre la source en même temps :

http://www.c2i.fr/code.aspx?IDCode=1080






__________
Kenji
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
Oui c'est délà plus simple à comprendre.
Ben oui, fait comme ils disent, tu utilise Excel mais tu sauvegarde en txt avec des ; comme séparateurs.





__________
Kenji
Messages postés
88
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
26 décembre 2006
1
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!)
Messages postés
88
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
26 décembre 2006
1
Merci de ton aide pour la source!!!!!
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
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é.






__________
Kenji
Messages postés
88
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
26 décembre 2006
1
MERCI car j'ais que word pad  ou le bloc note ,donc je vais faire ça avec le bloc note,comme tu disais avec 1;1;1;.....  SALUE
Messages postés
88
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
26 décembre 2006
1
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.
Messages postés
88
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
26 décembre 2006
1
Je ne me suis peut etre mal exprimer mais tu ma bien orienter ,merci a toi et bonne soire
Messages postés
88
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
26 décembre 2006
1
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!!!                                                                                                                                        
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
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')




__________
Kenji
Messages postés
88
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
26 décembre 2006
1
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")

End
Sub

Public
Enum eSquareTypesVide = 0

Mur = 1

Point = 5

Bonus = 2

SuperBonus = 3

End
Enum

Coll de ta part!!!!!!! 
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
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

End Class,

----

(Coloration syntaxique automatique par Kenji)





__________
Kenji
Messages postés
88
Date d'inscription
jeudi 30 novembre 2006
Statut
Membre
Dernière intervention
26 décembre 2006
1
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

' the code is regenerated.

'

'------------------------------------------------------------------------------

Option

Strict
OnOption

Explicit
On 

Namespace

My

'NOTE: This file is auto-generated; do not modify it directly. To make changes,

' or if you encounter build errors in this file, go to the Project Designer

' (go to Project Properties or double-click the My Project node in

' Solution Explorer), and make changes on the Application tab.

'

Partial
Friend
Class MyApplication

<

Global.System.Diagnostics.DebuggerStepThroughAttribute()> _

Public
Sub
New()

MyBase.New(
Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)

Me.IsSingleInstance =
false

Me.EnableVisualStyles =
true

Me.SaveMySettingsOnExit =
true

Me.ShutDownStyle =
Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses

End
Sub

<

Global.System.Diagnostics.DebuggerStepThroughAttribute()> _

Protected
Overrides
Sub OnCreateMainForm()

Me.MainForm =
Global.WindowsApplicationaaaaaxxxxxxlll.Form1

End
Sub

End
ClassEnd

Namespace
Il y a un problem avec :=

Global
.WindowsApplicationaaaaaxxxxxxlll.Form1
MERCI BEAUCOUP
Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
C'est normal le New existe déjà.
Mais oublis ca, je sais pas pourquoi ils ont mis ca mais c'est inutilie ici.

Tu devrais te trouver des tutorials plus adapté à ton niveau et plus complet.






__________
Kenji