Skocz do zawartości
vRage

Problem z AC WEAPON

Rekomendowane odpowiedzi

Witam.

 

Mam taki kod wykonujący się co pół sekundy:

		for(new nr=0; nr<13; nr++)
		{
			new idbroni[13];
			new amunicja[13];
	  		GetPlayerWeaponData(i, nr, idbroni[nr], amunicja[nr]);
	  		if(idbroni[nr] > 0 && idbroni[nr] < 46)
	  		{
				if(amunicja[nr] > 0 && ACBron[i][idbroni[nr]]==false)
				{
				bBan(i);
				return 1;
				}

				if(ACBron[i][idbroni[nr]]==true && ACAmmo[i][idbroni[nr]]!=amunicja[nr])
				{
			        ACAmmo[i][idbroni[nr]]=amunicja[nr];
      			        ACUsunBron(i,idbroni[nr]);
       			        ACDajBron(i,idbroni[nr],amunicja[nr]);
				}
				

			}
		}

 

 

Wszystko działało by dobrze, gdyby nie fakt że po dodaniu broni i oddaniu strzału dostajemy bana (bron "legalnego" źródła za która nie banuje przed oddaniem strzału)

Czy ktoś ma jakiś pomysł?

 

pozdrawiam, z góry dziękuję.

Edytowane przez vRage

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
for (new nr = 0; nr < 13; nr++) {
	
	static weapon[13], ammo[13];
	
	weapon[0] = 0, ammo[0] = 0;
	GetPlayerWeaponData(i, nr, weapon[nr], ammo[nr]);
	if ((0 <= weapon[nr] < 46)) {
	
		if (ammo[nr] && !ACBron[i][weapon[nr]]) {
			
			printf("Player %i has been banned. Weapon logic: %s, Weapon: %d, ammo: %d", i, (ACBron[i][weapon[nr])? ("true"): ("false"), weapon[nr], ammo[nr]);
			bBan(i);
			break;
		} else if (ACBron[i][weapon[nr]] && ACAmmo[i][weapon[nr]] != ammo[nr]) {
		
			ACAmmo[i][weapon[nr]] = ammo[nr];
			ACUsunBron(i, weapon[nr]), ACDajBron(i, weapon[nr], ACAmmo[i][weapon[nr]]);
		}
	}
}
Jeśli dalej by nie działało, to podaj tutaj odczyt debuga, którego dodałem. Edytowane przez AXV

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×