Skocz do zawartości

Milord

Użytkownicy
  • Postów

    30
  • Dołączył

  • Ostatnia wizyta

Osiągnięcia Milord

Chicken

Chicken (1/13)

0

Reputacja

  1. Cześć wszystkim mam taki problem z ruchomym głównym tłem. Może wyjaśnię o co dokładnie mi chodzi. mam trzy tła background1 bacground2 background3 Każde z nich ma takie same wymiary czyli 2096x1536 Tło background3 to sceneria na której są solidy nałożone Tło Background2 to statyczne tło na których widać bliższe elementy Tło background1 to ruchome tło w oddali z delikatnym blurem Viewa mam ustawionego na 800x500 I teraz chciałbym ustawić żeby te tło background1 poruszało się przy ruchu gracza góra,dół,lewo prawo... próbowałem już w stepie bohatera różnych ustawień np: GML background_x[0] = view_xview[0]/5; // różne cyfry wstawiałem background_y[0] = view_yview[0]/5;// różne cyfry wstawiałem Efekt jest taki,że jak chodzę bohaterem,to te tło dziwnie się porusza,np jak mam w oddali krajobraz,to przy poruszaniu ten krajobraz opada nie widać go,jest potem w innym miejscu,a w miejscu krajobrazu jest inna część tła z całości. Jak np wyłączę ruchome tło,to krajobraz wszystko ładnie jest dopasowane,no,ale nie ma efektu poruszającego się tła. Kiedyś miałem ustawione tło ruchome o identycznych rozmiarach co view i było ok,a teraz ma view inny i tło większe,bo chciałem żeby to lepiej wyglądało... Kurcze walczę z tym już jakiś czas i nie wiem jak to ustawić żeby było dobrze. Statycznie jest dobrze jak ładnie to wygląda,ale wtedy brak efektu głębi poruszania się tła.. Nie mam już pomysłu na to.. proszę pomóżcie Game Maker Studio Pro.
  2. Aj,bo się zamotałem jak chłop w sądzie;)tego nie mam mam to Hmmm sumują mi się punkty w poszczególnych levelach pierwszego świata,ale mam na myśli tak jak mowie Maxiu;) że statystyka nie że się wyświetli na końcu każdego levelu,tylko dopiero na końcu 4 levelu;) czyli muszę chyba w draw narysować tabelke z podsumowaniem wyników..że tyle mam pkt tyle zabitych wrogów tyle monet..;) w create dałem tam tak;) GML global.Zabitych[0]=0; global.Zabitych[1]=0; global.Zabitych[2]=0; global.Zabitych[3]=0; //global.pScore[1]=ilosc_punktow;// ilosc punktow wpisuje 0; ?? sa 4 plansze to żeby podsumował mi je wszystkie,ale wyświetlił je jak skończe czwartą plansze tą stytystykę we wrogach tam gdzie giną dałem ta linijkę obj_bandyta GML global.Zabitych[0]++; obj_nerwus GML global.Zabitych[1]++; Ps.Diamenty i inne pierdołu ja już ogarnę,na wzór przecież mam tablice z wrogami;) Chodzi mi głównie o punkty i ilość zabitych wrogów,gdzie wyświetli mi się to na końcu 4 planszy jak już ją skończe;) czyli coś w draw musze stworzyć taką tabelkę,gdzie w osobnym roomie wyświetli mi się ta stystyka,a potem będę mogł spokojnie przejść do świata drugiego;) Teraz Max von Gammer rozumie mnie;D?
  3. Maxiu już mi trochę namieszałeś;) dobra próbuje to złożyć w jedną całość;) robie w create obj game controller tak;) dodaje do istniejących zmiennych to: create GML global.pScore[-1]//jak dam -1 to znaczy,że podsumuje mi wszystkie pkt z lewelu już skończonego global.Zabitych[0]=0; //Pierwszy typ global.Zabitych[1]=0; //Drugi typ global.Zabitych[2]=0; //Trzeci typ global.Zabitych[3]=0;//czwarty typ</span></span> Teraz tak..to zostaje w tym obiekcie global game controller no i tworze sobie nowy room..i teraz w nim chce żeby wyświetliło mi się podsumowanie.. Max;) czyli mi tylko chodzi,że mając 4 levele chce żeby dopiero po 4 levelu wyskoczyło info w postaci nowej planszy o ilości zabitych wrogow,zdobytych punktow i ilosci zebranych monet. Nie musi mi co ukończona plansza pokazywać tą statystykę,tylko co ukończony każdy świat;) a światy mam podzielone na 4 plansze;) czyli wtedy robi tak global.pScore[-4] // o ile to dobrze zrozumiałem;) a nazwy leveli mam takie;) room_world1_4 room_world2_4 room_world3_4 room_world4_4 i po pokoju room_world4_4 niech pojawi się ta statystyka przed światem kolejnym czyli room_world2_1 statystyka hmmm może być w osobnym roomie. A wrogowie nazywają się następująco obj_bandyta obj_nerwus obj_czolg obj_smok
  4. hmmm...powolutku Max von Gamming;) a,wiec tak w create obiektu tam,gdzie mam już definiowane zmienne wrzucam;) GML global.Zabitych[0]=0; //Pierwszy typ global.Zabitych[1]=0; //Drugi typ global.Zabitych[2]=0; //Trzeci typ global.Zabitych[3]=0;//czwarty typ dobra i teraz drugą tablice tworze w nowym obiekcie,czy w tym samym? global.pScore[level]=ilość punktów;// tu wpisuje nazwę pokoju w levelu? Tylko jak to wyświetlić w osobnym roomie;)?
  5. Dzięki Max to dla mnie zrozumiałe;) ok sprawa wrogów załatwiona;) analogiczie to samo robie z punktami;)? Tak żeby w osobnym roomie po ukończeniu wszystkich 4 roomów podsumowanie mi wyskoczyło,czyli ile punktów,ile zabitych wrogów itd;)
  6. Cześć wszystkim mam świat,który składa się z 4 plansz..Ostatnia plansza,to walka z bossem,no i teraz jak unicestwię bosa i przechodzę do kolejnego świata,to za nim do kolejnego świata przejdę chciałbym zrobić podsumowanie punktów,czyli wskakuje plansza z podsumowaniem ukończonego świata informacje ile mamy zebranych punktów ile zabiliśmy wrogów,ile monet zebraliśmy o takie coś.... zmienne mam globalne czyli: mam w create obiektu game_controller GML global.pScore = 0; global.life = 5; global.coins = 0; global.Saved = true; globalvar spawnX, spawnY; gorzej z podsumowaniem ilości zabitych wrogów;) w danym świecie
  7. Cześć wszystkim posłużyłem się tutaj przykładem kolegów odnośnie wyświetlania tabelki w menu: I mam takie pytania do tego tematu: Wchodzę do menu,gdzie umieściłem sobie obiekt tabelka_highscore,wpisuje imię i jest pusto. Rozumiem,że to oczywiste,no bo przecież trzeba jeszcze zmienną utworzyć w obiekcie,gdzie mam życia,punkty,hud itp,i wtedy domyślam się,że się wyświetli lista wyników w menu gry po ukończeniu planszy,czy utracie żyć.. Dokładnie chciałbym tak,że jak uzyskam już jakieś tam punkty w grze no i np zginę,to żeby wyświetlił mi się możliwość wpisu swojego imienia i ta tabelka co w menu,ale to musiałaby się wyświetlić przed planszą game over,no chyba,że wpis najlepszych 7 graczy będzie zapełniony,a mój wynik będzie zbyt mały żeby dokonać wpisu to się nie wyświetli i nie dokona się wpis. kod na tą tabelkę w menu,gdzie wchodzę i wyświetlać ma się lista najlepszych graczy obj_tabelka_highscore Create GML // tworzenie tabelki z wynikami // ilosc wynikow global._max = 7; _sx = "ile"; _sy = "nick"; if ( !file_exists( 'high.txt' ) ) { ini_open( 'high.txt' ); for( _i = global._max - 1; _i >= 0; _i -= 1; ) ini_write_string( _sx, string( _i ), "0" ); for( _i = global._max - 1; _i >= 0; _i -= 1; ) ini_write_string( _sy, string( _i ), "brak" ); ini_close(); } ini_open( 'high.txt' ); for( _i = global._max - 1; _i >= 0; _i -= 1; ) global.l[_i] = real( ini_read_string( _sx, string( _i ), "0" ) ); for( _i = global._max - 1; _i >= 0; _i -= 1; ) global.n[_i] = ini_read_string( _sy, string( _i ), "brak" ); ini_close(); // punkty global.pScore = score; // podawanie nicka _nick = get_string( "Podaj nick:", "Pioter" ); // dodawanie wyniku if ( global.pScore ) && ( global.pScore > global.l[global._max - 1] ) { for( _i = global._max - 2; _i >= 0; _i -= 1; ) { if ( global.l[_i] >= global.pScore ) || ( !_i && global.pScore >= global.l[0] ) { if ( _i ) || ( !_i && global.pScore <= global.l[0] ) _i += 1; for( _j = global._max - 1; _j > _i; _j -= 1; ) { global.l[_j] = global.l[_j - 1]; global.n[_j] = global.n[_j - 1]; } global.l[_i] = global.pScore; global.n[_i] = _nick; break; } } } // zapis tabelki ini_open( 'high.txt' ); for( _i = global._max - 1; _i >= 0; _i -= 1; ) ini_write_string( _sx, string( _i ), string( global.l[_i] ) ); for( _i = global._max - 1; _i >= 0; _i -= 1; ) ini_write_string( _sy, string( _i ), global.n[_i] ); ini_close(); Draw GML for ( _i = 0; _i < global._max; _i += 1; ) { draw_set_color( c_blue ); draw_set_halign( fa_right ); draw_text( x + 250, y + 20 * _i, global.l[_i] ); draw_set_halign( fa_left ); draw_text( x, y + 20 * _i, global.n[_i] ); } no i teraz tak obiekt w którym mam zmienne punkty,życia itp ,oraz hud. obj_game_controller Create GML //Ustawienia globalne image_speed = 0; global.watch = 0; //ustawiamy globalnie na 0 w celu ich dalszego sumowaniu umozliwjajacego przejscie do nastepnej planszy po zebraniu ich odpowiedniej ilosci global.pScore = 0; global.life = 5; global.coins = 0; global.Saved = true; globalvar spawnX, spawnY; //Widok globalvar gvX, gvY, gvW, gvH, gvObj, gvOffX, gvOffY; gvX = view_xview[0]; gvY = view_yview[0]; gvW = view_wview[0]; gvH = view_hview[0]; gvObj = view_object[0]; gvOffX = 0; gvOffY = 0; //HUD hpHUD = 0; maxHpHUD = 0; tu step mojego bohatera GML if(instance_number(obj_napis_plansz)=0)// zatrzymuje sprita bohatera na czas wyswietlenia napisu Stage { if (vspd > 25) //Jesli predkosc spadania jest szybsza niz 25 (Mozna dowolnie zmieniac ta wartosc.) {global.damage+=4} //Zwiekszenie obrazen o wartosc 1. (Zmienienie liczby na wieksza zwiekszy zadawane obrazenia po upadku.) if not place_free(x,y+1) //Jesli w poblizu nas jest jakis obiekt rowniez zostana zadane obrazenia { other.hp-=global.damage //Odejmujemy punkty zycia od wartosci zadanych obrazen. global.damage=0 //Resetujemy zadawanie obrazen po uderzeniu w ziemie by nie zabieralo go wiecej } else if (vspd >35) { other.hp = -100; //natychniastowa smierc po upadku z ogromnej wysokosci } //Upadek z ogromnej wysokosci zabiora zycie,gdy energia osiagnie wartosc zero if( hp <= 0 ) { hp = 100; global.life -= 1; audio_play_sound(dzwiek_bohater_ginie, 1, false); x = start_x; y = start_y; } if( global.life <= 0 ) { room_goto(rm_game_over); //pokoj,gdzie ma sie akcja gry przeniesc po koncu gry } ///Kontrola if !place_meeting(x,y,obj_water) { //Normalny ruch if climbing == false { if keyboard_check_pressed(kJump) && inAir == false { vspd = -10-sign(pwrupJmp*3); jumpStr = 3; //Zeskakiwanie w dol if keyboard_check(kDown) && place_meeting(x,y+1,par_solid_ghost) { y += 4; vspd = 0; jumpStr = 0; jumpTimes = 0; } } else if keyboard_check(kJump) && jumpStr > 0 { audio_play_sound(dzwiek_skoku_bohatera, 1, false); //odtwarzamy dzwiek przy skakaniu vspd -= 2+sign(pwrupJmp); jumpStr--; } else { if keyboard_check_released(kJump) && jumpStr > 2 { vspd += 2+sign(pwrupJmp); } jumpStr = 0; } if keyboard_check(kAction) && attClock == false { if keyboard_check(kDown) { attClock = 16; curAttack = 1; with instance_create(x,y-16,obj_projectile) { hspd = other.image_xscale*10; vspd = 0; //lekko do gory -4 //mocno do gory g = .0; //0.2 tor lotu paraboliczny owner = par_player; strength = 0; explode = true; explosionRadius = 30; explosionStrength = 2+(sign(other.pwrupStr)*8); //image_blend = c_black; //kolor lotu pocisku audio_play_sound(dzwiek_bohater_strzela, 1, false); //odtwarzamy dzwiek przy strzelaniu } } else { attClock = 18; curAttack = 0; with instance_create(x,y,par_attack) { sprite_index = mask_player_attack; image_xscale = other.image_xscale; owner = par_player; strength = 1+(sign(other.pwrupStr)*4); } } } if keyboard_check(kRight) && !keyboard_check(kLeft) { if hspd < 10+(sign(pwrupSpd)*5) { hspd = min(hspd+(2+(sign(pwrupSpd)*2))*multiF,10+(sign(pwrupSpd)*5)); } image_xscale = 1; } if keyboard_check(kLeft) && !keyboard_check(kRight) { if hspd > -10-(sign(pwrupSpd)*5) { hspd = max(hspd-(2+(sign(pwrupSpd)*2))*multiF,-10-(sign(pwrupSpd)*5)); } image_xscale = -1; } //Wspinanie sie if place_meeting(x,y,par_climbable) && place_meeting(x,y-32,par_climbable) && place_meeting(x,y+32,par_climbable) && attClock <= 0 && (keyboard_check(kUp) || keyboard_check(kDown)) { climbing = true; vspd = 0; hspd = 0; } } //Wspinanie sie if climbing == true { var __hsign = keyboard_check(vk_right)-keyboard_check(vk_left); var __vsign = keyboard_check(vk_down)-keyboard_check(vk_up); hspd = min(max(hspd+__hsign,-2),2); vspd = min(max(vspd+__vsign*2,-4),4); if __vsign == -1 && !place_meeting(x,y-32,par_climbable) { climbing = false; vspd = -10; } if __hsign != 0 { image_xscale = __hsign; } if !place_meeting(x,y,par_climbable) || !place_meeting(x,y+32,par_climbable) { climbing = false; } } } else { //Plywanie swimDir = point_direction(0,0,keyboard_check(kRight)-keyboard_check(kLeft),keyboard_check(kDown)-keyboard_check(kUp)); if abs(keyboard_check(kRight)-keyboard_check(kLeft))+abs(keyboard_check(kDown)-keyboard_check(kUp)) != 0 { hspd += lengthdir_x(.5,swimDir); if !(swimDir > 0 && swimDir < 180) || place_meeting(x,y-sprite_height/3-1,obj_water) { vspd += lengthdir_y(.5,swimDir); } } if keyboard_check(kUp) && !place_meeting(x,y-sprite_height/1.5,obj_water) && vspd <= 0 { //plywanie do gory vspd = -12; } } } a tu kod kolizji gracza z przykładowym wrogiem.. obj_wrog GML ///Obrazenia jakie wrog zadaje bohaterowi if !vspd > 0 && hurtClock == 0 && other.hurtClock == 0 && sign(x-other.x) == other.image_xscale { hp -= 15; hurtClock = room_speed; vspd = -8; hspd = sign(x-other.x)*16; } if( hp <= 0 ) { hp = 100; global.life -= 1; x = start_x; y = start_y; } if( global.life <= 0 ) { room_goto( rm_game_over ); //pokoj,gdzie ma sie akcja gry przeniesc po koncu gry }
  8. Heheh działa MaxGaming kurcze;) wyciąłem te zmienne z create..wkleiłem w setings-creacion code;) w pierwszym roomie i pięknie zlicza;) suuuuper;)Chłopie jak sie spotkamy to masz duże piwo ode mnie;)
  9. no dobra to z tego globalnego obiektu kontroler wycinam tylko definiowanie zmiennych,a reszte zostawiam bez zmian łącznie z hud itp elementami;D? czekaj podeśle Ci kod całego mojego obiektu kontroler Create GML ///Ustawienia globalne image_speed = 0; global.watch = 0; //Ustawiamy globalnie na 0 w celu ich dalszego sumowaniu umozliwjajacego przejscie do nastepnej planszy po zebraniu ich odpowiedniej ilosci global.pScore = 0; global.life = 5; global.coins = 0; global.Saved = true; globalvar spawnX, spawnY; ///Widok globalvar gvX, gvY, gvW, gvH, gvObj, gvOffX, gvOffY; gvX = view_xview[0]; gvY = view_yview[0]; gvW = view_wview[0]; gvH = view_hview[0]; gvObj = view_object[0]; gvOffX = 0; gvOffY = 0; ///HUD hpHUD = 0; maxHpHUD = 0; End step GML ///Widok if view_wview[0] != gvW || view_hview[0] != gvH { var tempW, tempH; tempW = view_wview[0]; tempH = view_hview[0]; if gvW/view_wport[0] >= gvH/view_hport[0] { view_hview[0] = lerp(view_hview[0],gvH,.3); view_wview[0] = view_hview[0]/view_hport[0]*view_wport[0]; } else { view_wview[0] = lerp(view_wview[0],gvW,.3); view_hview[0] = view_wview[0]/view_wport[0]*view_hport[0]; } view_xview[0] -= (view_wview[0]-tempW)/2; view_yview[0] -= (view_hview[0]-tempH)/2; } if view_wview[0] > room_width { view_wview[0] = room_width; view_hview[0] = view_wview[0]/view_wport[0]*view_hport[0]; } if view_hview[0] > room_height { view_hview[0] = room_height; view_wview[0] = view_hview[0]/view_hport[0]*view_wport[0]; } if instance_exists(gvObj) { gvX = min(max(0,gvObj.x+gvOffX-view_wview[0]/2),room_width-view_wview[0]); gvY = min(max(0,gvObj.y+gvOffY-view_hview[0]/2),room_height-view_hview[0]); gvOffX = 0; gvOffY = 0; } view_xview[0] = round(min(max(0,lerp(view_xview[0],gvX,.15)),room_width-view_wview[0])); view_yview[0] = round(min(max(0,lerp(view_yview[0],gvY,.15)),room_height-view_hview[0])); gvW = gvWStart; gvH = gvHStart; //Tła /*for(i=0;i<8;i++) { if background_visible == true || background_foreground == true { //Horizontal if background_width != room_width { background_x = view_xview[0]/(room_width-view_wview[0])*(room_width-background_width); } //Vertical if background_height != room_height { background_y = view_yview[0]/(room_height-view_hview[0])*(room_height-background_height); } } }</span> room start GML ///Widok globalvar gvXStart, gvYStart, gvWStart, gvHStart, gvObjStart; gvXStart = view_xview[0]; gvYStart = view_yview[0]; gvWStart = view_wview[0]; gvHStart = view_hview[0]; gvObjStart = view_object[0]; if instance_exists(gvObj) { view_xview[0] = min(max(0,gvX),room_width-view_wview[0]); view_yview[0] = min(max(0,gvY),room_height-view_hview[0]); } Draw GUI GML /// Wyswietlamy HUD gracza draw_set_color(c_white); draw_sprite(spr_mniejszy_hud,1,50,64); var __guiW = display_get_gui_width(), __guiH = display_get_gui_height(); //punkty czyli score wysrodkowalem to na HUD draw_set_color(c_white); draw_set_valign(fa_middle); draw_set_halign(fa_center); draw_set_font(fn_punkty); draw_sprite(spr_score,1,310,30); draw_text(310,75,"$"+string(global.pScore)); // Zegarki rozmieszczenie spritow i liczb draw_set_color(c_white); draw_set_valign(fa_middle); draw_set_halign(fa_center); draw_set_font(fn_punkty); draw_sprite(spr_watch,1,500,30); draw_text(480, 75,string(" " + string(global.watch))); // Rozmieszenie monet draw_set_color(c_white); draw_set_valign(fa_middle); draw_set_halign(fa_center); draw_set_font(fn_punkty); draw_sprite(spr_coins,1,400,30); draw_text(400, 75, string(" " + string(global.coins))); //HP HUD if instance_exists(par_player) { hpHUD = lerp(hpHUD,par_player.hp,.5); maxHpHUD = par_player.maxHp; //HUD dopalaczy with obj_player { var _offset; _offset = 0; draw_set_font(fnt_pwrup); draw_set_valign(fa_bottom); draw_set_halign(fa_center); draw_set_color(c_white); draw_texture_flush(); if pwrupSpd > 0 { draw_sprite_ext(spr_pwrup_speed,0,__guiW-26,29+35*_offset,1,1,0,c_gray,.5); draw_text(__guiW-26,29+35*_offset,string(ceil(pwrupSpd/room_speed))); _offset++; } if pwrupStr > 0 { draw_sprite_ext(spr_pwrup_strength,0,__guiW-26,35+35*_offset,1,1,0,c_gray,.5); draw_text(__guiW-26,35+35*_offset,string(ceil(pwrupStr/room_speed))); _offset++; } if pwrupJmp > 0 { draw_sprite_ext(spr_pwrup_jump,0,__guiW-26,28+35*_offset,1,1,0,c_gray,.5); draw_text(__guiW-26,28+35*_offset,string(ceil(pwrupJmp/room_speed))); _offset++; } } } else { hpHUD = lerp(hpHUD,0,.5); } //HUD zycia draw_sprite_part(spr_hp_bar,1,1,0,180/maxHpHUD*hpHUD,130,90,14); draw_set_color(c_white); draw_set_valign(fa_middle); draw_set_halign(fa_center); draw_set_font(fn_punkty); draw_text(110, 74, string("x" + string(global.life))); //rozmieszczenie wskaznika zyc draw_sprite(spr_glowa,1,40,1); //sprite glowy bohatera przy pasku zycia</span> teraz tak jak mówisz tworze pusty obiekt bez persistant nazywam go np global_zmienne wycinam z create zmienne z tamtego starego obiektu,ale zostawiam tamten stary obiekt w pierwszym roomie.. No i teraz wklejam do create tego nowego obiektu bez persistant w create te zmienne..i potem wchodzę w ustawienia pokoju pierwszego i w creacion code wklejam to samo co w create w nowym obiekcie tak?;) tak to zrozumiałem
  10. Tak wszędzie ma ten obiekt w każdym pokoju No tak persistant,ale zawsze mogę odznaczyć;) dobrze po kolei co mam zrobić stworzyć drugi pusty obiekt? i wrzucić go do drugiej planszy;)? ale co to da;)? o i zauważyłem,że mam ta samą sytuacje z punktami czyli global.score z monetami global.coins tak samo jak życia..życia w nowej planszy są cały czas 5 a punkty i monety zamiast mi zliczać do kolejnej planszy,to mi je zeruje...mam na zero..no kurcze ech MaxGaminng ratuj..mogę i twój sposób zastosować aby zadziałało..
  11. Cześć wszystkim mam taki problem i teraz się przypatrzyłem. opisze o co chodzi: Zaczynam sobie grę plansza pierwsza z 5 życiami,bo tyle sobie ustawiłem..no i np tam stracę w tej planszy życie jedno,czy tam więcej.. przechodzę później do kolejnej planszy i zamiast mieć tą ilość żyć co w pierwszej planszy(czyli pomniejszoną o tyle ile straciłem),to ja znowu mam 5 żyć.. jak to naprawić? mam to w tym obiekcie,co umieszczony mam na planszy tu mam i hud itp rzeczy tu create obiektu kontroler,oczywiście ten obiekt mam ustawiony na persistent create GML ///Ustawienia globalne image_speed = 0; global.watch = 0; //Ustawiamy globalnie na 0 w celu ich dalszego sumowaniu umozliwjajacego przejscie do nastepnej planszy po zebraniu ich odpowiedniej ilosci global.pScore = 0; global.life = 5; global.coins = 0; global.Saved = true; globalvar spawnX, spawnY; ///Widok globalvar gvX, gvY, gvW, gvH, gvObj, gvOffX, gvOffY; gvX = view_xview[0]; gvY = view_yview[0]; gvW = view_wview[0]; gvH = view_hview[0]; gvObj = view_object[0]; gvOffX = 0; gvOffY = 0; ///HUD hpHUD = 0; maxHpHUD = 0;
  12. Dzięki teraz już rozumiem z tym view;) kurcze,bo zakręciłem się na maksa;) z spawn jest wszystko w porządku sprawdzałem..co do solidów,no to jak ci pisałem mam scenerie zbudowaną jako jedną całość...i na nią nałożony jeden niewidzialny solid w małych różnych kawałkach;) działa bardzo ładnie teraz;) kurcze,aż w szoku jestem;) Dzięki jeszcze raz;)
  13. Po prostu źle Cię zrozumiałem;) czyli daje margines tak: Begin step gracza GML //optymalizacja kodu gry instance_activate_all(); instance_deactivate_region(view_xview[64],view_yview[64],// początek regionu, w ktorym dezaktywujesz obiekty view_wview[0]+64,view_hview[0]+64,false,true); // dlugosc i wysokosc regionu instance_activate_object(obj_game_controller);// tu dodaje rozumiem wyjątki w grze,które chce żeby się nie dezaktywowały</span> instance_activate_object(obj_room_controller); instance_activate_object(obj_global_controller); instance_activate_object(par_solid); instance_activate_object(par_solid_ghost); instance_activate_object(obj_napis_plansz); instance_activate_object(obj_fade); instance_activate_object(obj_przejscie7); instance_activate_object(obj_energia); instance_activate_object(obj_spawn_bulwa); instance_activate_object(obj_spawn); instance_activate_object(obj_spawn_gerwazy); instance_activate_object(obj_spawn_rysiu); instance_activate_object(obj_spawn_rysiu_chodzi); instance_activate_object(obj_spawn_dino); instance_activate_object(obj_spawn_bandyta); instance_activate_object(obj_enemy_smoczek); instance_activate_object(par_hazard); instance_activate_object(obj_spadajace_kolce); Ktoś mi może powiedzieć co jest nie tak...ogólnie wszystko dobrze działa...ale teraz jak znajdę się,czy to na samym początku planszy lub na samym końcu planszy,to jednorazowo tylko raz wyświetla się przez ułamek sekundy kawałek poprzedniej planszy z poprzedniego roomu.. O co z tym chodzi? jak się tego pozbyć?
  14. No nic nie buguje Maxgaming;) hmmm chodzi ci dlaczego mam margines +800 ;)? bo w view w grze ustawiłem sobie 800x500 czyli mały kawałek scenerii;) z całości;) i ta część ma być nietykalna;) i każda za nią ma się dezaktywować i przed nią też może,ale jak się znajde w jej zasiegu,to ma się aktywować i tyle;)
  15. zobacz coś takiego;D? chce tylko żeby view mój był aktywny co ma wymiary podglądu 800x500 szeroki 800 wysoki na 500..reszta za nim ma być nieaktywna...dodałem wyjątki,ale hmmm czy to jest dobre mają być nieaktywne,a jak znajdą się w moim podglądzie nie daleko ,to mają się aktywować ot coś takiego. GML //optymalizacja kodu gry instance_activate_all(); instance_deactivate_region(view_xview[0],view_yview[0],// tu nie dałem marginesu..czyli teraz,wszystko z lewej strony powinno się dezaktwować,jak nie jest w zasięgu mojego podglądu. view_wview[0]+800,view_hview[0]+500,false,true); // dlugosc i wysokosc regionu instance_activate_object(obj_game_controller);// tu dodaje rozumiem wyjątki w grze,które chce żeby się nie dezaktywowały</span> instance_activate_object(obj_room_controller); instance_activate_object(obj_global_controller); instance_activate_object(par_solid); instance_activate_object(par_solid_ghost);
×
×
  • Dodaj nową pozycję...