Dabar yra 2021-06-18, 14:40




Naujos temos kūrimas Atsakyti į temą  [ 5 pranešimai(ų) ] 
pawno klausimai 
Autorius Žinutė
Naujokas
Naujokas
Vartotojo avataras

Užsiregistravo: 2010-06-04, 23:45
Pranešimai: 77
Forumo litai: 102
Pinigų pervedimas
Miestas: Vilnius
Standartinė pawno klausimai
Sveiki, bandau išskirti amxx tekstą ta prasme:

Parašai:
/test labas ka veiki?

Matai:
labas ka veiki?


Visaip jau cshamoj bandė padėti, tačiau taip iki galo niekas normaliai ir nepaaiškino, mėginau pats tačiau nežinau ką reiškia šios funkcijos ar masyvai, aš pakopinau ir parašiau ką aš manau, tačiau nežinau ar esu teisus, todėl jeigu galite parašykite paaiškinimą kas žinote, ačiū.


Kodas:
register_clcmd("say", "say2") - (čia viskas aišku)

public say2(id) {
new said[2] (kodėl [2]?)
read_argv(1, said, 1) (šito visiškai nesuprantu)

if (said[0] == '/test') (jeigu say pats pirmas žodis /test ? Tačiau man atrodo turi būti said[1], nes yra dar say, tai 0 bus kaip say_team)
{
new message[192] (žinutes ilgis)
read_args(message, 191) (jeigu galite parašykite ką reiškia read args)
remove_quotes(message) (pašalina kažkokius skliaustus)

log_amx("Tekstas: %s ", message[1]) (galiausiai irašinėja, tačiau kodėl message[1]?)
}
}



Bei dar vienas klausimas gal kaip nors lengviau išeitu su array ar dar kaip nors padaryti pvz:

register_clcmd("say /test", "say2")

Ir kaip nors atskirti ir kad tekstą rašytu?

Dėkoju už pagalbą


2010-06-04, 23:55
Aprašymas
Kalbusis dalyvis
Kalbusis dalyvis
Vartotojo avataras

Užsiregistravo: 2005-10-10, 20:07
Pranešimai: 1298
Forumo litai: 617
Pinigų pervedimas
Miestas: Vilnius
Standartinė Re: pawno klausimai
Labai neaiškiai išdėstei ko tu nori, pasakyk, kokio scripto tau reikia, galbūt parašysim kuo paprasčiau, su paaiškinimais.

_________________
Niekada nebijok daryti to ko nemoki, atmink: Nojaus arką pastatė mėgėjas, o Titaniką - profesionalai.


2010-06-07, 10:56
Aprašymas WWW
Naujokas
Naujokas
Vartotojo avataras

Užsiregistravo: 2010-06-04, 23:45
Pranešimai: 77
Forumo litai: 102
Pinigų pervedimas
Miestas: Vilnius
Standartinė Re: pawno klausimai
Šiaip jau pats noriu skriptą pasigaminti, norėjau iš jūsų išgirsti funkcijų said, read_argvs ir to smulkaus kodo paaiškinimą.
Man padarė skriptą:

Kodas:
public function_say(id) {
   new argv[6],arg[200]
   read_argv(id, argv, charsmax(argv))
   if(argv[0] != '/' || argv[1] != 't' || argv[2] != 'e' || argv[3] != 's' || argv[4] != 't') return PLUGIN_CONTINUE
   else {
      read_args(arg, charsmax(arg))
      remove_quotes(arg)
      replace(arg, charsmax(arg), "/test", "")
      trim(arg)
      client_print(id, print_chat, "%s", arg)
      return PLUGIN_HANDLED
   }
   return PLUGIN_CONTINUE
}


Ir vistiek nesupratau pavizdžiui:
trim(arg)
read_args(arg, charsmax(arg))


2010-06-08, 17:02
Aprašymas
Kalbusis dalyvis
Kalbusis dalyvis
Vartotojo avataras

Užsiregistravo: 2005-10-10, 20:07
Pranešimai: 1298
Forumo litai: 617
Pinigų pervedimas
Miestas: Vilnius
Standartinė Re: pawno klausimai
Visas funkcijas gali rasti čia, o šitas perdarytas scriptas tai nelabai optimalus sakyčiau ;) amxx scriptuose ypač reikia žiūrėti optimalumo, na, bet dėl tiek, nemanau kad pasijaus kažkas...

Kodas:
public function_say(id) {                   //funkcijos pavadinimas
   new argv[6],arg[200]                                     //funkcijos kintamieji (viename telpa 7 simboliai, kitame 201, vienas simbolis paliekamas newlainui dažniausiai..)
   read_argv(id, argv, charsmax(argv))               //nuskaito pirmus 6 simbolius įvestus eilutėje
   if(argv[0] != '/' || argv[1] != 't' || argv[2] != 'e' || argv[3] != 's' || argv[4] != 't') return PLUGIN_CONTINUE   //Jei pirmas simbolis / antras t ir t.t. nieko nevyksta.
   else {
      read_args(arg, charsmax(arg))                    //nuskaito visą eilutę į antrą masyvą, kuriame telpa 200 simbolių (charsmax(arg)) f-ja gražina visą masyvo dydį.
      remove_quotes(arg)                                   //pašalina kabutes
      replace(arg, charsmax(arg), "/test", "")        //pašalina iš eilutės tekstą /test
      trim(arg)                                                    //nuima tarpus nuo eilutės pradžios ir galo
      client_print(id, print_chat, "%s", arg)            //išveda eilutę žaidėjui į ekraną
      return PLUGIN_HANDLED                             //stabdo funkciją
   }
   return PLUGIN_CONTINUE                               //PYYP pluginą iš naujo.
}

_________________
Niekada nebijok daryti to ko nemoki, atmink: Nojaus arką pastatė mėgėjas, o Titaniką - profesionalai.


2010-06-08, 18:29
Aprašymas WWW
Naujokas
Naujokas
Vartotojo avataras

Užsiregistravo: 2010-06-04, 23:45
Pranešimai: 77
Forumo litai: 102
Pinigų pervedimas
Miestas: Vilnius
Standartinė Re: pawno klausimai
Sngz dėkoju, nors biški apšvietei. (:


2010-06-10, 10:18
Aprašymas
Rodyti paskutinius pranešimus:  Rūšiuoti pagal  
Naujos temos kūrimas Atsakyti į temą  [ 5 pranešimai(ų) ] 


Dabar prisijungę

Vartotojai naršantys šį forumą: Registruotų vartotojų nėra ir 0 svečių


Jūs negalite kurti naujų temų šiame forume
Jūs negalite atsakinėti į temas šiame forume
Jūs negalite redaguoti savo pranešimų šiame forume
Jūs negalite trinti savo pranešimų šiame forume
Jūs negalite prikabinti failų šiame forume

Ieškoti:
Pereiti į:  
cron
© phpBB Group. Veikia phpBB pagrindu.
Dizaino autorius Vjacheslav Trushkin, adaptavo Igor „MucTuK“ Gubaidulin
Vertė Vilius Šumskas © 2003, 2005, 2007