Array ir const

Šiame forume rašomi vartotojų klausimai/problemos su kuriomis jie susidūrė kuriant pluginus.
Post Reply
User avatar
TBagT
Jau perkopė 10 žinučių ribą !
Posts: 14
Joined: 2010 Oct 25 12:51
Skype: deusx223

Array ir const

Post by TBagT »

Kaip būtu galima gauti su array vienam plugine parašytą constą kuris siunčiamas per native ?
Nes man reiktu gauti šiuos sound:

Code: Select all

new const garsai[ ][ ] = { "vienas.wav", "du.wav", "trys.wav" } register_sound( ..., garsai );
Ką reiktu padaryti, kad kitame plugine galėčiau naudoti šiuos pavadinimus garsams groti bei juos užprecachinti ?

User avatar
aaarnas
Vyr. diskusijų administratorius
Posts: 3891
Joined: 2010 Aug 31 13:21
Skype: fiarno
Contact:

Re: Array ir const

Post by aaarnas »

Code: Select all

new const garsai[ ][ ] = { "vienas.wav", "du.wav", "trys.wav" }  native register_sound(sounds[], amount) public plugin_precache() { // Būtinai šitame forwarde reikia registruoti. Kitaip tada reikės kitais būdais daryti.        register_sound(garsai, sizeof(garsai))}

Code: Select all

public plugin_native() {        register_native("register_sound", "native_register_sound", 1)} public native_register_sound(sounds[], amount) {     for (new i=0; i<amount; i++) {                precache_sound(sounds[i]) // nuorodas susitvarkysi, nes cia sounds[i] tera tik tas, kas irasyta masyve.        server_print(sounds[i]) // "vienas.wav", "du.wav", "trys.wav"    }}
Palikau CS pasaulį ;/ . Nebepasiekiamas.

User avatar
TBagT
Jau perkopė 10 žinučių ribą !
Posts: 14
Joined: 2010 Oct 25 12:51
Skype: deusx223

Re: Array ir const

Post by TBagT »

Dėkui tau Arnai, o turi tam kode omenyje nuorodas tai "vienas.wav" ir t.t ? Tai reiks su formatex direktorija nustatyt ? Kai grįšiu namo išbandysiu kodą, ir parašysiu kaip veikia :)

-- 2013 Vas 11 16:05 --

Code: Select all

    new bufferis[ 100 ];    for( new hi = 0; hi < amountpain; hi++ ) {        formatex( bufferis, charsmax( bufferis ), "resident_swarm/zombies/pain/%s", pain[ hi ] );        engfunc( EngFunc_PrecacheSound, bufferis );    }
Ir taip gaunasi

Code: Select all

 Warning:  Unable to open sound/resident_swarm/zombies/pain/pain1.wav for transferWarning:  Unable to open sound/resident_swarm/zombies/pain/ain1.wav for transferWarning:  Unable to open sound/resident_swarm/zombies/pain/in1.wav for transferWarning:  Unable to open sound/resident_swarm/zombies/pain/n1.wav for transferWarning:  Unable to open sound/resident_swarm/zombies/pain/1.wav for transferWarning:  Unable to open sound/resident_swarm/zombies/pain/.wav for transferWarning:  Unable to open sound/resident_swarm/zombies/pain/pain2.wav for transferWarning:  Unable to open sound/resident_swarm/zombies/pain/ain2.wav for transferWarning:  Unable to open sound/resident_swarm/zombies/pain/in2.wav for transferWarning:  Unable to open sound/resident_swarm/zombies/pain/n2.wav for transferWarning:  Unable to open sound/resident_swarm/zombies/pain/2.wav for transfer

User avatar
aaarnas
Vyr. diskusijų administratorius
Posts: 3891
Joined: 2010 Aug 31 13:21
Skype: fiarno
Contact:

Re: Array ir const

Post by aaarnas »

Tai prechache funkcija neiškviečiama, neteisingai nuoroda suformatuota, arba nėra failų nurodyta nuoroda.
Palikau CS pasaulį ;/ . Nebepasiekiamas.

User avatar
hleV
AMX Mod X ekspertai
Posts: 875
Joined: 2011 Apr 02 11:23
Skype: hlev.lt
Location: Šiauliai

Re: Array ir const

Post by hleV »

Prirašyk param_convert(1) funkcijos native_register_sound() pradžioj. Ir man atrodo turėtų būt sounds[][], o ne sounds[].
Image ← RIP best userbar
DISKUSIJA: KIETAS PLUGIN'O UŽSAKOVAS
Privačios pagalbos neteikiu!

User avatar
TBagT
Jau perkopė 10 žinučių ribą !
Posts: 14
Joined: 2010 Oct 25 12:51
Skype: deusx223

Re: Array ir const

Post by TBagT »

Hlev parašytas convert ir pakeitęs į tą [ ][ ] dabar tiktais meta šitą error.

Code: Select all

L 02/11/2013 - 18:09:21: [AMXX] Displaying debug trace (plugin "a_resident_swarm.amxx")L 02/11/2013 - 18:09:21: [AMXX] Run time error 5: memory access L 02/11/2013 - 18:09:21: [AMXX]    [0] a_resident_swarm.sma::native_register_zombie (line 457)L 02/11/2013 - 18:09:21: Unhandled dynamic native errorL 02/11/2013 - 18:09:21: [AMXX] Displaying debug trace (plugin "a_hunter_class.amxx")L 02/11/2013 - 18:09:21: [AMXX] Run time error 10: native error (native "swarm_register_zombie")L 02/11/2013 - 18:09:21: [AMXX]    [0] a_hunter_class.sma::plugin_precache (line 31)
457 eilutė

Code: Select all

formatex( bufferis, charsmax( bufferis ), "resident_swarm/zombies/pain/%s", pain[ hi ] );  

User avatar
aaarnas
Vyr. diskusijų administratorius
Posts: 3891
Joined: 2010 Aug 31 13:21
Skype: fiarno
Contact:

Re: Array ir const

Post by aaarnas »

Problema, kad kreipiamasi į blogą atminties vietą. Tokiu metodu pas save perduodu integer masyvą. Su string masyvu nemėginau.
Dar patikrink kiek tau sizeof perduoda (amountpain) ir kiek turi elementų masyve. Tas skaičius turi sutapti.

Blogiausiu atveju, jei nepavyks tokiu metodu padaryti, tai galima taip suprogramuoti, kad per native po vieną elementą perduoti, o ne visą jų masyvą (daug kartų native kviesti tam pačiam registruojamam objektui, su vis kitu elementu).
Palikau CS pasaulį ;/ . Nebepasiekiamas.

Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests