-
Postów
196 -
Dołączył
-
Ostatnia wizyta
Typ zawartości
Profile
Forum
Wydarzenia
Odpowiedzi opublikowane przez Choosen
-
-
Jesli chcesz zeby pulpit znalazl się wewnatrz twojego okna to podaj jako tlo wzkaznik na nieistniejący zasób :]
Jesli chcesz rysowac po pulpicie to musisz pobrac kontekst urządzenia nadrzędnego czyli pulpitu... i juz :thumbsup:
-
jasne :-) interesuje cie kolejnosc ?
P.S. 9200 ptk rank 2 :-)
Edit Choosen : nowy rekord 11200 rank 1
-
8400 rank 5 :-) fajna giera :D
-
Tworzysz sobie dowolny obiek i dajesz mu dowolny sprite. Nastepnie w dziale create dajesz klocek execute a piece of code a w nim piszesz :
{
alarm[0]=1;
speed=0;
direction=floor(random(360));
}
W alarm[0] dajesz ten sam klocek a w nim :
{
alarm[0]=1;
speed+=0.2;
direction+=5;
}
-
A własnie ze wystarczy! Mało tego... własnie tak sie to robi ;)
-
Oj tam czepiasz sie... :jezor:
No dobra.. dobra.. moze troche pospieszylem sie z zalozeniami ;)
-
Hehe jak milo znow wrocic do korzeni :)
Na poczatek jedna uwaga... zauważcie, że jesli linijka konczy się na A to zaczyna się na B i odwrotnie.. nie ma wiec sensu zalozenie jesli parzysta jesli nie parzysta.. wystarczy je pisac naprzemiennie ABABABA i w odpowiednim miejscu konczyc linie ;)
Program kwadrat; uses crt; var m,n,i,j :integer; litera : char; Begin clrscr; write('Podaj liczbe wierszy : '); readln(m); write('Podaj liczbe kolumn : '); readln(n); writeln; litera:='A'; for i:=1 to m do begin for j:=1 to n do begin write(litera); if (litera='A') then begin litera:='B'; end else begin litera:='A'; end; end; writeln; end; readkey; end.
A tak to bedzie wygladac...
Podaj liczbe wierszy : 4
Podaj liczbe kolumn : 5
ABABA
BABAB
ABABA
BABAB
-
Niestety nie... ale zapowiada się calkiem ciekawie. Wspolpracuje z wieloma platformami... no i jest latwiejszy od OpenGLa... a cos tak latwego trudno uproscic ;-)
-
Ja nie bardzo rozumiem problemu z portami... :huh:
Zarówno adres jak i port mozesz pobrac poprzez zwyklego pop-up'a ( tak jak to bylo w moim przykladzie ktorego juz zapewne nie ma na serwerze :) ) pozniej łączysz pobrane dane w jeden ciąg znakow aby jego format byl następujący :
adr:adr:adr:adr:port
Pamietaj ze skladowe adresu nie mogą przekraczac 255 a port 63999 ale przeciez to wiesz :-)
-
Nie... chyba ze ją wyslesz. Jest taka mozliwosc i bez problemu powinienes sobie poradzic z napisaniem takiego skryptu. Wystarczy odrobina chęci i podstawy angielskiego... jak stoisz z angielskim ?
Edit By Sadam : Choosen ty żyjesz! Huuuuraaa!!
-
persistent=true;
Pamiętaj zeby wylaczyc tą wlasciwosc jak juz przeniesiesz sie do strefy rozstawiania jednostek... w przeciwnym wypadku jesli znow wejdziesz do koszarow jednostki z pola bitwy tez sie tam znajdą... no chyba ze podczas gry do koszarow mozna bedzie wejsc tylko raz......
-
Hmm... przesuwasz "Origin" sprite'a na miejsce gdzie chcialbys any znajdowal sie srodek ciezkosci. Wowczas mozesz traktowac x, y obiektu jako wspolrzedne srodka ciezkosci.
-
Fizyka sie klania ;) Srodek ciezkosci.. vektor sily, wspolczynnik tarcia.. nie no pikus ale ja sie nie podejme ;)
-
prawdopodobnie string jest tablicą znakow więc mozesz isc po komorkach tablicy az napotkasz znak podzialu ( w tym przypadku srednik ) co oznaczac bedzie ze od poczatku do tego znaku masz pierwszy wyraz itd...
-
ehh... warzone.. jeszcze do dzis figurki imperialistow stoją na polce. Wlasnorecznie malowane przywołują wspomnienia... no coz powodzenia zycze i czekam na gre :P
-
Ja tylko dodam od siebie, ze takie cos jest jak najbardziej wykonalne i daje duzo lepsze efekty niz zwykla aniamacja klatka po klatce ( w przypadku postaci gdzie animacja jest dosc skomplikowana o wiele latwiej zorganizowac to na podstwie szkieletu ) oczywiscie takie elementy skladowe musialyby byc odpowiednio narysowane.. ale to chyba oczywiste :)
-
poprawne rozwiazanie napisalem ci pod moim postem
-
hehe Remx zadajesz zbyt skomplikowane pytania jak na to forum :lol:
Przedewszystkim musisz w kazdej postaci zaznaczyc wartosc o jaką mozna przesunac widok po jej zaznaczeniu. Nastepnie tworzysz "flagę" ktora bedzie mowic czy dana postac jest zaznaczona. ( Pamietaj tez zeby odznaczyc wszystkie pozostale postacie zaznaczając tą jedyną ). Tak przygotowany tworzysz view[0] i ustawiasz jego parametry. Nie wiadomo czy zaznaczona postac ma "zasieg widzenia " wiekszy niz aktualne ustawienia widoku... wiec na wszelki wypadek zawsze centruj widok na zaznaczanej postaci. Nastepnie w step kursora myszki sprawdzasz 3 rzeczy :
1) czy postac jest zaznaczona
2) czy kuror jest blisko krawedzi widoku
3) czy odleglosc kursora myszki od postaci nie jest wieksza niz zasieg widzenia
Jesli wszystkie te wartosci są pozytywne ( sprawdzasz warunek dla AND ) to mozna przesuwac jesli nie.. to nie.
Jesli nie poradzisz sobie mimo mojej podpowiedzi, daj znac z czym masz problem ( lub jesli w ogole nie zrozumiales ) a postaram sie wyjasnic bardziej dokaldnie.
-
Jesli ilosc pociskow wynosi 2 a petle zaczynasz od 0 przy zalozeniu for i=0;i<=ilosc to petla wykona sie 3 razy. Być moze to sprawia ze czasami wychodzi ci wieksza ilosc obrazen niz wynika to z obliczen. Co do reszty kodu nie znalazlem bledu, ale nie bardzo rozumiem za co on odpowiada. O ile dobrze to wywnioskowalem napisales 2 alternatywne rozwiazania na ten sam problem tak ?
var w,k; { w=(global.ARp-global.OBs); for (i=0; i<global.OBsx; i+=1) { kostka(); if (global.ko>w)global.dmg+=1 }}
-
Hm.. dzieki za uznanie, ale nie popadajmy w histerie to tylko stoper ;-) A skoro juz o tym mowa zrobilem przyklad zeby wszystko bylo jasne. Do sciagniecia z naszej strony.
-
To chyba niewiele probowales :P
W kazdym "room'ie" mozesz ustawic wartosc "speed" Mowi ona ile klatek animacji na sekunde jest wykonywane. Jesli room speed bedzie wynosic 30. O znacza to ze po wykonaniu sie 30 klatek uplynie 1 sekunda. Jasne ?
Jak to wykorzystac :
Tworzysz sobie kilka zmiennych w dowolnym obiekcie... nazwyjmy go zegar
create :
klatki = 0;
sekundy=0;
minuty=0;
godziny=0;
Nastepnie w dziale step obiektu zegar wstawiasz kod :
if klatki<30 klatki+=1 else {sekundy+=1; klatki=0;}
if sekundy=60 { sekundy=0; minuty+=1 }
if minuty=60 { minuty=0; godziny+=1 }
Kod tem mowi zeby co klatkę zwiekszac wartosc zmiennej "klatki" o jeden. Dzieki temu mozemy stwierdzic ze jezeli wartosc tej zmiennej wynosi 30 uplynela dokladnie jedna sekunda. Skoro tak to zwiekszamy wartosc naszego zegra o 1 dla wartosci sekund. Nastepnie sprawdzamy czy tych sekund nie bylo juz 60, bo jesli tak to uplynela wlasnie minuta... itd itp.
Pozostaje tylko wyswietlic naszą godzinę
W dziale draw wstawiamy klocek draw a text i w polu tekst wpisujemy :
""+string(godziny)+"."+string(minuty)+"."+string(sekundy)
-
Nie wiem co z literami bo nie moge sciagnac pliku.... ale te "wahania" wynikają z tego ze pozycja przycisku aktualizowana jest dopiero PO przesunieciu "view[X]"
Przesuwamy widok w daną stronę i dopiero potem koordynaty podane w step nie są aktualne w zwiazku z czym wykonuje się operacja :
x=view_left[0]+683
y=view_top[0]+280
Jest to błąd a przynajmniej jesli nie chcesz wahan. Aby to naprawic nalezy stworzyc przycisk w odpowiednim miejscu poleceniem
instance_create(view_left[0]+683,view_top[0]+280,oMove1);
a nastepnie w kodzie przesuwajacym view[X] dodac 2 linijki uaktualniające pozycje guzika wzgledem pozycji obrazu i to nie komendą x=view_left[0]+683 a jedynie x+=1 ( np )
Jesli nie zrozumiales o co chodzi to napisz... a wyjasnie dokladniej
-
Jak dla mnie opcja nr 1. Gra .. he Ultima Online :thumbsup: Na pytanie o klimat fantasy chyba nie musze odpowiadac ? ;)
-
Losowanie liczby z danego zbioru robi się na tablicach ( tak jak to opisalem w innym temacie), ale w twoim wypadku wystarczy cos takiego :
liczba=round(random(15))*32
Mam problem...
w Pytania początkujących
Opublikowano
Ehh specjalisci ;)
Nicolas ... Tworzysz obiekt postac ( u mnie ludek ) i obiekt po zetknieciu z ktorym i wcisnieciu klawisza enter ma sie pojawic jakis komunikat ( u mnie gadanie )
Nastepnie "otwierasz" obiekt ludek do edycji. Wybierasz event kolizji z obiektem gadanie i dajesz tam klocek execute a piece of code a w nim :
if keyboard_check(vk_enter)
{
show_message("cos tam");
}
koniec...