IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

aide pour jeu de la bataille navale


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    113
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 113
    Par défaut aide pour jeu de la bataille navale
    Salut a tous, je me suis mis en tête de faire une bataille navale, et je bute déja . Je pensais faire une image de 500*500 px avec dedans des carreaux de 25*25 px, puis on placerais les bateaux sur ce quadrillage. Mais pour ca il faudrait que chaque carreaux réagisse a un évenement ; j'ai donc pensais mettre un label sous chaque carreaux et mettre le propriété transparent a true. Mais le probleme c'est que j'ai en tout 400 carreaux ...... donc 400 labels a créer ca fais beaucoup quand même ! Donc comment créer 400 labels d'un coup ?
    ou alors proposez moi une autre solution ...

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 633
    Par défaut
    Bonjour,

    Tu ne crées pas 400 bidules ...

    Tu quadrilles ta fiche, et quand il y a un clic dessus, avec les coordonnées X,Y que le message du clic te donne, tu détermines où tu te trouves (facile avec la dimension de ta fiche, et l'espacement des lignes/colonnes)

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    113
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 113
    Par défaut
    hum hum c'est pas bete tout ca , je vais essayé !
    Merci et a++

  4. #4
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    113
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 113
    Par défaut
    SAlut a toutes et a tous,
    Je remet ce sujet au gout du jour car j'ai encore un problème (oui je sais ca fait un bout de temps mais j'ai du arreter le projet...)
    Je vais résumer le fonctionnement : le jeu est lancé sur 2 pc, un se met en serveur et l'autre en client, lorsqu'un joueur joue et touche un bateau, une chaine de caratere est envoyé a l'aide de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    server.socket.connections[0].sendtext
    Celle-ci contient le nom du bateau touché et sa position.
    Lorsque le joueur tire une fois, une chaine de caractere est envoyée.
    Mais une arme permet de tiret 200 coups en une seule fois.
    Le client envoie une chaine contenant le nom de l'arme. Le serveur en déduis les 200 cases tirées. Puis avec un for, le serveur analyse les tirs et envoie une chaine de caractere au client des qu'un bateau est touché et/ou coulée.
    Mais apparement le client n'arrive pas a traiter ensuite toutes c'est chaine.
    D'ou ca vient, ou alors il y a t il un meilleur moyen de réaliser ce programme ?

    Si j'ai pas été assez clair n'hésiter pas a me le dire...

    Voila merci ....

  5. #5
    Membre confirmé Avatar de poly128
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 102
    Par défaut
    C'est parceque quand le serveur envoi des donné rapidement a un client, le client ne peu pas sufir a la tache, allors il saute des information envoyer par le serveur.

    Le seul moyen que j'ai trouver pour éviter ca c'est:

    envoi d'une donné par le serveur.
    reception de la donné par le client.
    envoi d'une confirmation de reception par le client.
    Le serveur peu envoyer une nouvelle information.
    Et ca recommence.

    En esperant que ca puisse t'aider.

  6. #6
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    113
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 113
    Par défaut
    oulalala, c'est bien ce que je pensais !
    Merci ! Je vais essayer de faire ca !

  7. #7
    Membre Expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Par défaut
    Citation Envoyé par Jeannot Alpin
    Mais apparement le client n'arrive pas a traiter ensuite toutes c'est chaine.
    et en plus, ce qui doit se passer (classique), c'est que ton serveur, parfois, n'envoie pas la chaîne, puis au coup d'après te l'envoi avec la suivante (les deux à la fois donc)
    C'est ce qui arrive lorsque la masse de données à envoyer n'a pas dépassé un certain seuil (en terme de volume de données) : les données restent coincées dans le buffer de la carte réseau. Ces dernières ne sont envoyées que lorsque d'autres données s'y accolent (litéralement) pour en partir, ou qu'un délais de temps ne s'est pas écoulé. C'est un bug "officiel" du standard Berkeley" surlequel s'appuient toutes les bibliothèques de sockets (y compris les Winsock).

    C'est en partie à cause de ça que j'ai fait mes propres compos réseau, pour ne plus avoir de mauvaises surprises à ce niveau là.

    Le principe, c'est que lorsque tu envois des données (une chaîne de caractère), il faut impérativement les faire précéder par la taille de données prévues.
    Comme ça à la réception, ton buffer réceptionne et attend la réception tant qu'il n'a pas tout reçu (si les données sont envoyées en plusieurs paquets --> données volumineuses)
    Ou si deux transmissions arrivent accolées l'une à l'autre, tu arrives néanmoins à les redécouper grace a cette information sur la taille des données et à les traiter successivement comme si deux paquets avaient été reçus successivement.

  8. #8
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    113
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 113
    Par défaut
    J'ai installé tes composants sans problème mais je me demande : étant donné que mon projet est assez long est ce qu'il faut changer tout ce qui est en rapport avec serversocket et clientsocket ou ce sont les même (plus ou moins) propriété, méthode et évennement et donc j'ai juste a changer le nom de l'objet ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. aide pour bataille navale
    Par isn14 dans le forum GUI
    Réponses: 6
    Dernier message: 17/05/2015, 20h43
  2. Besoin d'aide pour jeu de Pinball
    Par amintheone dans le forum Développement 2D, 3D et Jeux
    Réponses: 1
    Dernier message: 08/08/2010, 15h22
  3. besoin d'aide pour jeu d'awalé
    Par Dabech dans le forum Débuter avec Java
    Réponses: 6
    Dernier message: 12/04/2008, 22h41
  4. aide pour créer un jeu
    Par cstefany dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 23/10/2005, 03h51
  5. Besoin d'aide pour un projet de jeu en ligne
    Par FLEO dans le forum Projets
    Réponses: 1
    Dernier message: 21/10/2005, 08h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo