
|
Espace membre |
| Accueil |
| Forum |
| Connection |
|
Espace visiteur |
| Nos projets |
| Nos creations |
| Nos tutoriaux |
Connexion
Derniers sujets
» Lancer des jeux gravés sur wii SANS PUCES !!!par djiki248 Dim 29 Nov - 16:53
» [LUA] Faire un mode 2 joueurs
par Anonymous Lun 16 Nov - 19:01
» [VERSION] MyWindows Fusion 3.XX.2.1 Beta Test
par cocotier000 Mer 28 Oct - 18:13
» Salut tout le monde!
par Wise01 Mer 18 Fév - 14:25
» Des vidéos sur votre PSP, grâce à votre PSP !!!
par kasuke5 Dim 15 Fév - 14:27
» [FUSION] 1er Video
par naki75 Dim 8 Fév - 19:24
» Librairie : Texte centré
par naki75 Dim 8 Fév - 19:15
» Librairie : Lire video MyV
par naki75 Dim 8 Fév - 19:03
» [projet]myprog
par binot Mer 21 Jan - 22:21
[LUA] Faire un mode 2 joueurs
Global Guardians Corp :: DevWiki :: PSP
Page 1 sur 1 • Partager •
[LUA] Faire un mode 2 joueurs
Bonjour a tous, ayant dans la dernière
version de rpg creator intégré un mode ad-hoc, je vais vous expliquer
par quelle systeme se mode est fait, tout d'abord voila le code complet
:
Il faut savoir que ce code s'utilise dans un contexte avec:
herox et heroy : coordonnées x et y du joueur
playername : nom du joueur
statut_marco : correspond au statut d'affichage (voir code heros.lua)
Le jeu est definis par une signature de 7 caractére exemple : 1589638
j'espere que ce script vous aura servis et que plein de jeu en multi apparaitront
version de rpg creator intégré un mode ad-hoc, je vais vous expliquer
par quelle systeme se mode est fait, tout d'abord voila le code complet
:
Il faut savoir que ce code s'utilise dans un contexte avec:
herox et heroy : coordonnées x et y du joueur
playername : nom du joueur
statut_marco : correspond au statut d'affichage (voir code heros.lua)
Le jeu est definis par une signature de 7 caractére exemple : 1589638
- function lancement_adhoc() ----- Lancement de l'adhoc
- Adhoc.init() ---- On lance l'ad-hoc
- screen:print(10,240,"Preparation au mode ad-hoc") ---- On l'écrit
- Adhoc.connect() ---- On se connecte
- if Adhoc.getState() == 1 then ------ si on a reussi a ce connecté
- screen:print(10,240,"Ad-hoc connecte, lancement des joueurs") ---- On l'écrit
- file = io.open("GAME/SYSTEM_NUM/signature.bin", "r") ----- on lit sa signature numérique
- signature = file:read() ----Lecture
- file:close()
- gestion() ----- On lance le mode eux joueurs
- end
- end
- function envoye() ----- Envoye des données
- if pad ~= oldpad then ---- Si on appuye sur une touche donc sis sa change
- Adhoc.send(signature.."X"..herox) ----Envoie coordonnée x
- Adhoc.send(signature.."Y"..heroy) ---- Envoie coordonnée y
- Adhoc.send(signature.."P"..statut_marco) ---- envoie statut d'affichage
- Adhoc.send(signature.."N"..playername) ---- Envoie du nom
- end end
- function recevoir() ------ Recois les données
- if Adhoc.recv() ~= nil then ------ Si on recoit quelque chose
- signature_amis = string.sub(Adhoc.recv(),0,7) ----- La signature devant
- if signature_amis == signature then ------ Si c'est le meme jeu
- if string.sub(Adhoc.recv(),7,
== "X" then----- COORDONNE X - hero2x = string.sub(Adhoc.recv(),8,string.len())
- end
- if string.sub(Adhoc.recv(),7,
== "Y" then----- COORDONNE Y - hero2y = string.sub(Adhoc.recv(),8,string.len())
- end
- if string.sub(Adhoc.recv(),7,
== "P" then----- Affichage - hero2pos = string.sub(Adhoc.recv(),8,string.len())
- end
- if string.sub(Adhoc.recv(),7,
== "N" then----- Nom - hero2nom = string.sub(Adhoc.recv(),8,string.len())
- end
- else
- Adhoc.term() ---- Si ce n'est pas le meme jeu, on coupe le mode ad-hoc
- end end
- function affichage_adhoc() ----- Affiche les données recus
- if hero2x ~= nil then ----- Si on a recu les bonnes données
- larg = marco:width() / 3 ---Largeur
- hau = marco:height() /4---Hauteur
- screen:print(hero2x-15,hero2y-20,hero2nom)
- -----------------------------------------------------------------DANS CETTE PARTIE ON AFFICHE LE MEME PERSO QUE LE HEROS
- if hero2pos == 1 then
- screen:blit(hero2x,hero2y,marco,larg,hau,larg,hau)
- end
- if hero2pos == 2 then
- screen:blit(hero2x,hero2y,marco,larg,hau,larg,hau)
- end
- if hero2pos == 3 then
- screen:blit(hero2x,hero2y,marco,larg,3*hau,larg,hau)
- end
- if hero2pos == 4 then
- screen:blit(hero2x,hero2y,marco,larg,0,larg,hau)
- end
- if hero2pos == 5 then
- screen:blit(hero2x,hero2y,marco,larg,2*hau,larg,hau)
- end end end
- function gestion() ------ Gere le systeme d'affichage, d'envoie, et de reception
- screen:print(10,240,"Vous jouez en mode 2 joueurs") ------ On montre que l'on joue à deux
- affichage_adhoc() ------ On affiche le copain
- recevoir() -----On recoit
- envoye() ------ on envoye
- end
j'espere que ce script vous aura servis et que plein de jeu en multi apparaitront
_________________
Soutenez la ggc et nos projets en cliquant sur les pubs dans la zone spéciale : :
http://ggc-forum.8forum.net/Accueil-h2.htm

Lordvisaris- Dieu supreme du forum

- Messages: 757
Date d'inscription: 19/07/2008
Age: 17
Localisation: Sur le fofo

Re: [LUA] Faire un mode 2 joueurs
Salut,
Merci pour ce tuto mais j'aimerais bien qu'tu m'expliques 2-3 truks.
1) Ce script ce place à quel niveau dans le code, faut-il créer une nouvelle page en .lua et faire un dofile ?
2) Faut-il rajouter un dofile ? car ayant testé, dans mon exemple ça faisait :
script.lua =
Si t'appuie sur O ca dofile("adhoc.lua") (en gros ton script mais modifié)
En faisant ça, le Wlan ne clignotait pas, et ecran noir sur les 2 PSP, pas de messages d'erreur.
Si t'appuie sur X ca dofile("jeu.lua") (ici pas de problème.)
Le blème c'est donc :
Ton script, j'l'ai mis dans un fichier appelé adhoc.lua
et quand les 2 psp acceder à ce adhoc.lua et bah rien.
Voilà j'espere avoir été assez clair :'
J'attend ta reponce avec impatience =)
Merci pour ce tuto mais j'aimerais bien qu'tu m'expliques 2-3 truks.
1) Ce script ce place à quel niveau dans le code, faut-il créer une nouvelle page en .lua et faire un dofile ?
2) Faut-il rajouter un dofile ? car ayant testé, dans mon exemple ça faisait :
script.lua =
Si t'appuie sur O ca dofile("adhoc.lua") (en gros ton script mais modifié)
En faisant ça, le Wlan ne clignotait pas, et ecran noir sur les 2 PSP, pas de messages d'erreur.
Si t'appuie sur X ca dofile("jeu.lua") (ici pas de problème.)
Le blème c'est donc :
Ton script, j'l'ai mis dans un fichier appelé adhoc.lua
et quand les 2 psp acceder à ce adhoc.lua et bah rien.
Voilà j'espere avoir été assez clair :'
J'attend ta reponce avec impatience =)
Alexfren- Invité
Permission de ce forum:
Vous pouvez répondre aux sujets dans ce forum





