🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: alt.pl.programy.flash-5
9 messages
9 total messages Started by Mr.Jack Sun, 21 Jan 2007 19:56
Interakcja między graczami
#33777
Author: Mr.Jack
Date: Sun, 21 Jan 2007 19:56
10 lines
1423 bytes
Czy ktos moglby mi podrzucic linka do jakiegos dobrego, jasnego tutoriala 
uczacego podstaw komunikacji miedzy 2 osobami za pomoca Flasha? Chcialbym w 
takim tutorialu znalezc w jaki sposob napisac prosty AS coby dwie osoby 
moglo sie polaczyc ze soba i np. przelaczac swiatelka ;) Im banalniejsze tym 
lepsze, byle bylo objasnione jak to ogarnac.

-- 
Jacek "Mr.Jack" Sawicki
http://www.motocykl.org
http://www.motocykl.org/portfolio/mrjack_portfolio.rar 
Re: Interakcja między graczami
#33778
Author: Devoth
Date: Mon, 22 Jan 2007 01:51
31 lines
2249 bytes
Mr.Jack napisał(a):
> Czy ktos moglby mi podrzucic linka do jakiegos dobrego, jasnego tutoriala 
> uczacego podstaw komunikacji miedzy 2 osobami za pomoca Flasha? Chcialbym w 
> takim tutorialu znalezc w jaki sposob napisac prosty AS coby dwie osoby 
> moglo sie polaczyc ze soba i np. przelaczac swiatelka ;) Im banalniejsze tym 
> lepsze, byle bylo objasnione jak to ogarnac.
> 
php i jakaś baza (MySQL lub Postgres)

musi to z grubsza działać na zasadzie

1. Flash u usera 1 i 2 wysyła prośbę na serwer o aktualny stan światełka
2. php pobiera z bazy aktualny stan światełka
3. php zwraca do Flasha stan światełka
4. Flash aktualizuje stan światełka
5. user nr 1 we Flashu zmienia stan światełka
6. Flash wysyła stan światełka do bazy (tu można zastanowić się co jeśli 
jest konflikt, bo w tym czasie światełko się zmieniło)
7. Jeśli sukces to php zwraca aktualny stan światełka (jeśli porażka to 
zwraca komunikat o błędzie i aktualny stan światełka)
8. Flash aktualizuje stan światełka

Cały psikus polega na tym aby flash u obu userów ciągle (powiedzmy co 
sek) pobierał stan światełka z bazy, druga sprawa to wcześniej 
wspomniane konflikty.

-- 
pozdrawiam
Devoth
Questions? - Do not hesitate to ask!
www.devoth.pl || www.devoth.com (eng. version)
Re: Interakcja między graczami
#33779
Author: Mr.Jack
Date: Mon, 22 Jan 2007 10:13
14 lines
1687 bytes
Devoth wrote:
> Cały psikus polega na tym aby flash u obu userów ciągle (powiedzmy co
> sek) pobierał stan światełka z bazy, druga sprawa to wcześniej
> wspomniane konflikty.

Ok, kwestia PHP i bazy to dla mnie pikuś. Pytanie - w jaki sposob flash ma 
pobierac ten stan swiatelka oraz jak zainicjowac polaczenie obu userow. O te 
2 zagadnienia mi chodzi w jakims tutorialu. Cos na socketach, czy jak? W 
javie probowalem przegryzac sie w ten problem, ale zaniechalem ;)

-- 
Jacek "Mr.Jack" Sawicki
http://www.motocykl.org
http://www.motocykl.org/portfolio/mrjack_portfolio.rar 
Re: Interakcja między graczami
#33780
Author: Devoth
Date: Mon, 22 Jan 2007 17:12
25 lines
1892 bytes
Mr.Jack napisał(a):
> Devoth wrote:
>> Cały psikus polega na tym aby flash u obu userów ciągle (powiedzmy co
>> sek) pobierał stan światełka z bazy, druga sprawa to wcześniej
>> wspomniane konflikty.
> 
> Ok, kwestia PHP i bazy to dla mnie pikuś. Pytanie - w jaki sposob flash ma 
> pobierac ten stan swiatelka oraz jak zainicjowac polaczenie obu userow. O te 
> 2 zagadnienia mi chodzi w jakims tutorialu. Cos na socketach, czy jak? W 
> javie probowalem przegryzac sie w ten problem, ale zaniechalem ;)

Witam,

Tutorial napisałem do innego wątku tutaj, ale może i Tobie się przyda.
Pobieranie rozmiaru pliku z serwera i wyświetlanie we Flashu:
http://www.devoth.pl/tutoriale/pobranie_rozmiaru_pliku_z_serwera.html

Co do socketów to nie piłem jeszcze razem z nimi, być może jest taka 
opcja. ;)

-- 
pozdrawiam
Devoth
Questions? - Do not hesitate to ask!
www.devoth.pl || www.devoth.com (eng. version)
Re: Interakcja między graczami
#33781
Author: Mr.Jack
Date: Mon, 22 Jan 2007 20:31
19 lines
1889 bytes
Devoth wrote:
> Tutorial napisałem do innego wątku tutaj, ale może i Tobie się przyda.
> Pobieranie rozmiaru pliku z serwera i wyświetlanie we Flashu:
> http://www.devoth.pl/tutoriale/pobranie_rozmiaru_pliku_z_serwera.html

W jaki sposob to mialoby mi pomoc?

Zastanawiam sie czy tego nie da sie zrobic tak, ze flash odczytywalby i 
zapisywal informacje do jakiegos pliku tekstowego albo bazy danych. Ale to i 
tak nie rozwiazuje problemu polaczenia miedzy 2 osobami. Tak zeby jedna 
osoba widziala dokladnie to samo w tym samym (no powiedzmy kwestia kilku 
sekund opoznienia) momencie.

Szukam dalej takiego prostego tutoriala...

-- 
Jacek "Mr.Jack" Sawicki
http://www.motocykl.org
http://www.motocykl.org/portfolio/mrjack_portfolio.rar 
Re: Interakcja między graczami
#33782
Author: Devoth
Date: Mon, 22 Jan 2007 20:48
32 lines
2217 bytes
Mr.Jack napisał(a):
> Devoth wrote:
>> Tutorial napisałem do innego wątku tutaj, ale może i Tobie się przyda.
>> Pobieranie rozmiaru pliku z serwera i wyświetlanie we Flashu:
>> http://www.devoth.pl/tutoriale/pobranie_rozmiaru_pliku_z_serwera.html
> 
> W jaki sposob to mialoby mi pomoc?

bo masz tu przykład komunikacji flasha z php

> Zastanawiam sie czy tego nie da sie zrobic tak, ze flash odczytywalby i 
> zapisywal informacje do jakiegos pliku tekstowego albo bazy danych. Ale to i 
> tak nie rozwiazuje problemu polaczenia miedzy 2 osobami. Tak zeby jedna 

Rozwiązuje...
Wystarczy pobierać dane z bazy co 1 sek, albo częściej, jeśli obaj je 
pobierają to logiczne że jeśli jeden wprowadzi jakąś zmianę to obaj ją 
za sekundę zobaczą.

> osoba widziala dokladnie to samo w tym samym (no powiedzmy kwestia kilku 
> sekund opoznienia) momencie.
> 
> Szukam dalej takiego prostego tutoriala...

rozpisz wszystko na problemy (co właściwie już za Ciebie wcześniej 
zrobiłem) i po kolei je oprogramowuj

-- 
pozdrawiam
Devoth
Questions? - Do not hesitate to ask!
www.devoth.pl || www.devoth.com (eng. version)
Re: Interakcja między graczami
#33783
Author: Mr.Jack
Date: Mon, 22 Jan 2007 20:56
13 lines
1677 bytes
Devoth wrote:
> rozpisz wszystko na problemy (co właściwie już za Ciebie wcześniej
> zrobiłem) i po kolei je oprogramowuj

Ale nadal nie mam informacji o najwazniejszej rzeczy - chyba, ze po prostu 
nie widze tego wsrod pomocnych odpowiedzi: w jaki sposob polaczyc obu 
uzytkownikow do jednej i tej samej gry, tak zeby widzieli siebie nawzajem i 
swoje ruchy, a nie czyjes inne ?

-- 
Jacek "Mr.Jack" Sawicki
http://www.motocykl.org
http://www.motocykl.org/portfolio/mrjack_portfolio.rar 
Re: Interakcja między graczami
#33784
Author: Devoth
Date: Mon, 22 Jan 2007 21:32
29 lines
2368 bytes
Mr.Jack napisał(a):
> Devoth wrote:
>> rozpisz wszystko na problemy (co właściwie już za Ciebie wcześniej
>> zrobiłem) i po kolei je oprogramowuj
> 
> Ale nadal nie mam informacji o najwazniejszej rzeczy - chyba, ze po prostu 
> nie widze tego wsrod pomocnych odpowiedzi: w jaki sposob polaczyc obu 
> uzytkownikow do jednej i tej samej gry, tak zeby widzieli siebie nawzajem i 
> swoje ruchy, a nie czyjes inne ?
> 
To mozna na wiele sposobow, np tworzac identyfikatory gier, lub loginy i 
hasla.
Załóżmy takie coś: użytkownik przy uruchamianiu aplikacji łączy się z 
serwerem, serwer sprawdza czy jest jakas gra czy nie ma. Jesli jest to 
zapisuje w sesji tego uzytkownika idenfyfikator tej gry i po sprawie. 
Jesli nie ma to w bazie tworzy nowy identyfikator gry i tez przekazuje 
go uzytkownikowi.

Przy czym zeby sprawdzic czy user sie nie rozłączył, możesz przyjąć coś 
takiego: jeśli przy dołączaniu nowego usera wychodzi że jest założona 
gra ale użytkownik nie wysyłał żadnych danych przez dłużej niż np 5 
sekund to znaczy że się rozłączył i traktowane jest to jako założenie 
nowej gry.

-- 
pozdrawiam
Devoth
Questions? - Do not hesitate to ask!
www.devoth.pl || www.devoth.com (eng. version)
Re: Interakcja między graczami
#33785
Author: Mr.Jack
Date: Tue, 23 Jan 2007 14:49
38 lines
2311 bytes
Ok, zrobilem sobie przykladowy projekt. Jest ci kolko o nazwie lampka. Na
jednej warstwie mam AS osadzony w 1 ramce:

myLoadVar = new LoadVars ();
myLoadVar.load("lampka.php?pokaz=1");
myLoadVar.onLoad = function (success){
  if (success == true) {
    kolor=myLoadVar.kolor;
 stan.htmlText=myLoadVar.kolor;
  }
}

if(lampka.kolor == 1) {lampka.setRGB(0xFF0000); }
if(lampka.kolor == 2) {lampka.setRGB(0x000000); }

lampka.onRelease = function() {
     getURL("lampka.php?zmiana=1","ramka2");
}

gotoAndPlay(1);

Zalozenie jest takie, ze po kliknieciu w kolko ma sie wyslac informacja do
pliku php o koniecznosci zmiany stanu (koloru) kolka. Wysyla sie to do
IFRAME, coby nie odswiezac samego flasha. PHP robi UPDATE do bazy mysql
zmieniajac stan z 1 na 2 lub z 2 na 1 w zaleznosci od tego co bylo
wczesniej. Flash sobie sie caly czas zapetla i pobiera aktualny stan koloru
kolka . I prawie wszystko dziala - tzn wskaznik stanu sie updateuje,
informacja o stanie sie zmienia w animacji, ale... nie zmienia sie kolor.
Czemu?

http://www.motocykl.org/test/ - tu mozna zobaczyc jak to (nie)dziala
http://www.motocykl.org/test/lampka.fla  - plik zrodlowy


-- 
Jacek "Mr.Jack" Sawicki
http://www.motocykl.org
http://www.motocykl.org/portfolio/mrjack_portfolio.rar
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads