Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano

jestem w trakcie tworzenia gry 3D multiplayer. Blad polega na tym, ze d3d_block powinien byc na miejscu 2 gracza a tak nie jest. Jest za to na moim miejscu. skad wziac x,y,z 2 gracza ?

Opublikowano

to nie dziala no chyba ze cos zle zrobilem

 

STEP EVENT

// Update czasu

now = ( now + 1 ) mod 10000;

 

 

// Odbieranie danych

while( mplay_message_receive( 0 ) )

{

// ID gracza

p = mplay_message_player();

 

// Jesli nowy gracz

if( !ds_map_find_value( players, p ) )

{

m = ds_map_create();

ds_map_add( m, 'name', mplay_message_name() );

ds_map_add( m, 'id', instance_create( 192, 192, obj_p ) );

ds_map_add( m, 'time', now );

ds_map_add( m, 'ping', 0 );

 

ds_map_add( players, p, m );

 

playersCount = mplay_player_find();

 

}

 

// Mapa gracza

pm = ds_map_find_value( players, p );

// Obiekt gracza

o = ds_map_find_value( pm, 'id' );

// ID wiadomosci

i = mplay_message_id();

// Wartosc wiadomosci

d = mplay_message_value();

switch( i )

{

case 1: //Nowy gracz

break;

 

case 2: //Gracz wychodzi

with( o )

instance_destroy();

ds_map_destroy( pm );

ds_map_delete( players, p );

 

exit;

break;

 

case 3: //Pozycja i inne dane gracza

o.tx = toNum( string_copy( d, 1, 4 ) );

o.ty = toNum( string_copy( d, 5, 4 ) );

o.direction = toNum( string_copy( d, 9, 2 ) );

break;

 

case 4: //Wiadomosc globalna

ds_list_add( chat, mplay_message_name() + ': ' + d );

break;

 

case 6: //Wiadomosc lokalna

i = instance_create( o.x, o.y - 32, Message );

i.text = mplay_message_name() + ': ' + d;

break;

 

case 8:

i = toNum( string_copy( d, 1, 4 ) );

v = toNum( string_copy( d, 5, 1 ) );

i.visible = v;

break;

}

 

// Update czasu

ds_map_replace( pm, 'time', now );

}

 

// Ping graczy przekroczyl limit

k = ds_map_find_first( players );

while( k > 0 )

{

m = ds_map_find_value( players, k );

if( ds_map_find_value( m, 'ping' ) > 1000 )

{

with( ds_map_find_value( m, 'id' ) )

instance_destroy();

ds_map_destroy( m );

ds_map_delete( players, k );

}

k = ds_map_find_next( players, k );

}

 

// Pisanie wiadomosci

if( chatWrite )

{

// Wyslij wiadomosc i przejdz do kontroli gracza

if( keyboard_check_pressed( vk_enter ) )

{

keyboard_string = string_replace_all( keyboard_string, '#', '\#' );

 

if( string_length( string_replace_all( keyboard_string, ' ', '' ) ) )

{

if( chatToAll )

{

mplay_message_send_guaranteed( 0, 4, keyboard_string );

ds_list_add( chat, my_name + ': ' + keyboard_string );

}

else

{

mplay_message_send_guaranteed( 0, 6, keyboard_string );

i = instance_create( my_object.x, my_object.y, Message );

i.text = my_name + ': ' + keyboard_string;

}

}

 

chatWrite = false;

}

}

else

// Kontrola obiektu gracza

{

 

// Przejscie do czatu lokalnego

if( keyboard_check_pressed( vk_enter ) )

{

keyboard_string = '';

chatWrite = true;

chatToAll = false;

}

 

}

zmiksowalem przyklad "mmogame" z 3D Engine

java script:emoticon(':huh:', 'smid_12')niewiele z tego kapuje

mam podac jego ID,bo "o" tez nie dziala java script:emoticon(':)', 'smid_3')

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...