[ARHIIV] mängumeistrid
Pole sisse logitud. [Logi sisse ]
Mine lehekülje algusesse
Prinditav versioon | Telli teema e-mailile | Lisa lemmikutesse  
Vaenlase AI
HuntedMan
Level 3


Liitunud: 26.11.2005
Postitusi: 49
[EEMAL]




postitati 30.7.2009 12:14 Tsiteeri
Vaenlase AI



Noh käsil siis väike mänguke milles on vaja et vaenlane liiguks minu tegelase poole.
Praegu kasutan siis sellist koodi juppi

mp_potential_step(Grn,Grn,4,false)

põhimõte selles et vaenlane jälitaks mu tegelast, mida nad ka korraks teevad ja siis hakkavd ekraani äärde kõndima
(Grn objekti nimi mida nad jälitama peavad)

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
h0lx
Kohalik sitapea
Avatar

Liitunud: 10.4.2006
Postitusi: 1826
[EEMAL]




postitati 30.7.2009 12:15 Tsiteeri


Grn.x ja Grn.y ei peaks olema? praegu sa feedid mingi IDd ju sinna funktsiooni..
Platform II: -DMI-; H0lx&jorssJõulumäng I: h0lx&jorss
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
HuntedMan
Level 3


Liitunud: 26.11.2005
Postitusi: 49
[EEMAL]




postitati 30.7.2009 15:30 Tsiteeri


Tänud.

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
HuntedMan
Level 3


Liitunud: 26.11.2005
Postitusi: 49
[EEMAL]




postitati 31.7.2009 08:45 Tsiteeri


Ei tahtunud uut teemat jälle teha, nii et küsin siin.
Kuidas teha vaenlasele elusid.
Hetkel vaenlase create evendis
Hp1 = 5

collision evendis set variable Hp1 -1

oleks vaja teha niimoodi et kui Hp1 = 0
peaks vaenlane surma saama, aga kuhu eventi alla ma selle tegema pean?

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
simmo
Level 10
Avatar

Liitunud: 6.1.2006
Postitusi: 720
[EEMAL]




postitati 31.7.2009 08:59 Tsiteeri


Step

Vaata kasutaja profiili Saada kasutajale e-mail Külasta kasutaja kodulehte Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
HuntedMan
Level 3


Liitunud: 26.11.2005
Postitusi: 49
[EEMAL]




postitati 31.7.2009 09:38 Tsiteeri


Ei näi töötavat, üks kõik kui palju tabamusi vaenlane saab, ta ei sure.
Kõik eelneva jätsin samaks, ainult vaenlase step evendi alla panin et kui hp1=0 instance_destroy

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
HuntedMan
Level 3


Liitunud: 26.11.2005
Postitusi: 49
[EEMAL]




postitati 31.7.2009 09:46 Tsiteeri


Noo, seda kontrollisin ma eriti korralikult, seda nad ei ole.
Ma panin "bullet'i" evendi alla ka et set variable Hp1 -1
Aga ei funksi.
Ja nüüd kui mul teie tähelepanu juba on, kas keegi saaks öelda kuidas relvale nagu cooldown teha et iga sekundi tagant tuld ei saaks anda?

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
HuntedMan
Level 3


Liitunud: 26.11.2005
Postitusi: 49
[EEMAL]




postitati 31.7.2009 10:10 Tsiteeri


Põhimõtteliselt , mul on juba hiire klõpsu all üks event et ilma relvata tulistada ei saaks
if Relv = 1
{instance_create(Grn.x,Grn.y,bul1)
}
oleks vaja teha nad üheks evendiks ju? et ilma relvata tuld ei saa anda ja iga sekund ka tuld ei saaks anda kui juba relv on

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
HuntedMan
Level 3


Liitunud: 26.11.2005
Postitusi: 49
[EEMAL]




postitati 31.7.2009 12:22 Tsiteeri


Aaa, tänud peetrile, lõpuks sain tööle .
Boonus küsimus:Kuidas teha hiirega liikumist?(Hiire suunas nagu)
Praegu ma ikooniga teinud nagu
W key pressed step towards mouse_x,Mouse_y

Aga mul oleks vaja ka näiteks strafeda ja tagurpidi kõnidida.
Ja tegelane on mul pandud hiirt jälgima (direction_point(mouse blah blah...))
Nii et tagurpidi kõndides (S key eventi step towards -mouse_x,-mouse_y panna hakkaksid kuulid seljast väljuma)

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
h0lx
Kohalik sitapea
Avatar

Liitunud: 10.4.2006
Postitusi: 1826
[EEMAL]




postitati 31.7.2009 12:39 Tsiteeri


no sa määrad hp miinus üheks, mitte ei lahuta hpst ju ühte ja soovitav on tingimusse panna mitterange võrratus hoopis.
Platform II: -DMI-; H0lx&jorssJõulumäng I: h0lx&jorss
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
HuntedMan
Level 3


Liitunud: 26.11.2005
Postitusi: 49
[EEMAL]




postitati 31.7.2009 12:45 Tsiteeri


No jah, seda kyll, aga sellest ma enne rääkisingi(tegin paar trükiviga)
ma ei saa niimoodi tagurpidi liikumist teha, sest muidu hakkavad kuulid läbi selja lendama mul

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
InCreator
baksjor!
Avatar

Liitunud: 18.12.2005
Postitusi: 1230
[EEMAL]




postitati 31.7.2009 12:51 Tsiteeri


Et tagurpidi kõndida või strafeda, pead lahutama sprite suuna ja mehe directioni, ehk ei tohi mehe nägu directioni suunas keerata, vaid teed uue muutuja näo suuna jaoks. Ja see vaatab hiirt alati.

Direction aga on hiire järgi + vajalik number. Niimoodi saad directioni ühele poole aga nägu on teisele.

näiteks

suund = point_direction(x,y,mouse_x,mouse_y)

ja muutuja "suund" on siis mehe suund, draw eventis kasutad seda

draw_sprite_ext(sprite_mees,image_single,x,y,1,1,suund...


Näiteks tagurpidi (ütleme, alla) astudes on direction näiteks 270 aga näo suund on 90 (üles).
Sellest järeldub et kui vajutad tagasi astumise nuppu, olgu direction (hiire suund + 180), strafemisel siis hiire suund pluss või miinus 90.

Näo suund aga olgu alati hiire poole.
Tulistamisel kasuta ka ainult muutujat "suund", mitte direction
direction on ainult liikumise jaoks.

Loogiline.
Emo2: InCreator
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
HuntedMan
Level 3


Liitunud: 26.11.2005
Postitusi: 49
[EEMAL]




postitati 31.7.2009 13:15 Tsiteeri


Kas võiksid veidikene veel selgitada , kuidas seda meest nagu ekraanile "tekitada"
Kraadide põhimõttest ma sain aru mis mul valesti oli, aga see suund ja mehe drawimine ekraanile on väike probleem.
Muutuja : suund , seda võiksid ka natuke rohkem selgitada :D

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i
InCreator
baksjor!
Avatar

Liitunud: 18.12.2005
Postitusi: 1230
[EEMAL]




postitati 31.7.2009 13:45 Tsiteeri


muutuja "suund" on omatehtud directioni asendaja. Kui tahad hästi õppida, tee kõik koodiga.

Create event -> lisa koodi ikoon ja siis kood
suund = 0; //(paremale, vaata et sprite oleks ka suunaga paremale ja oleks klõpsitud nuppu "center" sprite editoris)
friction = .3; // hõõrdejõud sujuvaks liikumiseks


Step event -> kood
suund = point_direction(x,y,mouse_x,mouse_y); // keerab "suund" muutuja väärtuse suunaks mehest hiirekursorini

Draw event -> kood

draw_sprite_ext(mehespritenimi, image_single, x, y, 1, 1, suund, c_white, 1);

Mida draw_sprite_ext teeb, loe helpist ise. Küll aga pane tähele et "rotation" argumendiks on muutuja "suund" väärtus. Ehk siis sprite krutitakse nii, et tema suund oleks sama mis muutuja suund väärtus ehk mehe nägu vaataks kursorit.

SELLE KÄSU KASUTAMISEKS ON VAJALIK VÄHEMALT GM 6.1 REGATUD

Vot. Aga kõik liikumised tee hoopis directioni kasutades. Edasi minnes pane direction samamoodi hiire suunas:

W-key event -> kood
direction = point_direction(x,y,mouse_x,mouse_y); // või lühemalt: direction = suund;
speed = 6;

Kõrvale astudes kamanda mees hiire suunas + või - 90 kraadi

A-key event -> kood
direction = suund + 90;
speed = 6;

D-key event -> kood
direction = suund - 90;
speed = 6;

S-key event -> kood
direction = suund + 180;
speed = 6;

Ja ongi? Mees vaatab suunda "suund" aga liigub suunda "direction", mis nuppe vajutades muutub. Vaid edasi minnes sunnitakse direction hiire järgi.

speedi ja frictioni näpi parajaks vajaduse järgi. frictioni võid madalaks teha, näiteks 0.15 ja speedi ka, näiteks 4.

Vot. Ma ei suuda päris peast niimoodi programmeerida ja võib-olla on kusagil mõni loogikaviga, aga suht töötama peaks minu pilgu järgi.
Emo2: InCreator
Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum
HuntedMan
Level 3


Liitunud: 26.11.2005
Postitusi: 49
[EEMAL]




postitati 31.7.2009 14:25 Tsiteeri


Kudos, sain tööle, põhimõtteliselt :)

Vaata kasutaja profiili Otsi kasutaja postitusi Saada privaatsõnum Vaata kasutaja MSN-i

Hetkel loevad seda teemat:
Mitte ühtegi - 1 külaline

Mine lehekülje lõppu





Foorumi algbaas põhineb XMB mootoril, modifitseeritud Valter Pundi poolt
Kodulehekülg on tehtud Valter Pundi poolt vpundi ät gmail punkt komm