Peršokti į turinį
Negalima prašyti ar platinti betkokių žaidimą (multiplayer) palengvinančių programų ir scriptų! Kitaip bus taikoma 1.21. taisyklė

[ sa-mp f-jos ] Pora naudingų f-jų susijusių su Transportų parametrais


Rechy

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 2811 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

Šitos f-jos išgauna tr. priemonės parametrus ir atvaizduoja juos string'ais.

 

   • Paaiškinimai:

      • param[ 0 ] - variklis ( angl. engine ),

      • param[ 1 ] - šviesos ( angl. lights ), 
      • param[ 2 ] - signalizacija ( angl. alarm ), 
      • param[ 3 ] - durys ( angl. doors ),
      • param[ 4 ] - variklio gaubtas aka. kapotas/kapoto dangtis ( angl. bonnet ), 
      • param[ 5 ] - bagažinė ( angl. boot ), 
      • param[ 6 ] - rodyklė ( angl. objective ),
 
      • GetVehicleParamsEx(vehicleid, ....) - Išgauna tr. priemonės parametrus
      • SetVehicleParamsEx(vehicleid, ....) - Nustato tr. priemonės parametrus
 
stock param_status_engine(vehicleid) {
	new 
		param_status[ 15 ],
		param[ 7 ];

	GetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], param[ 2 ], param[ 3 ], param[ 4 ], param[ 5 ], param[ 6 ]);
	if(param[ 0 ] == VEHICLE_PARAMS_ON) param_status = "Užkurtas"; 
	else if(param[ 0 ] == VEHICLE_PARAMS_OFF) param_status = "Užgesintas";
	else if(param[ 0 ] == -1) param_status = "Užgesintas";
	return param_status;
}
stock param_status_lights(vehicleid) {
	new 
		param_status[ 15 ],
		param[ 7 ];

	GetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], param[ 2 ], param[ 3 ], param[ 4 ], param[ 5 ], param[ 6 ]);
	if(param[ 1 ] == VEHICLE_PARAMS_ON) param_status = "Įjungtos"; 
	else if(param[ 1 ] == VEHICLE_PARAMS_OFF) param_status = "Išjungtos";
	else if(param[ 1 ] == -1) param_status = "Išjungtos";
	return param_status;
}
stock param_status_alarm(vehicleid) {
	new 
		param_status[ 15 ],
		param[ 7 ];

	GetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], param[ 2 ], param[ 3 ], param[ 4 ], param[ 5 ], param[ 6 ]);
	if(param[ 2 ] == VEHICLE_PARAMS_ON) param_status = "Įjungta"; 
	else if(param[ 2 ] == VEHICLE_PARAMS_OFF) param_status = "Išjungta";
	else if(param[ 2 ] == -1) param_status = "Išjungta";
	return param_status;
}
stock param_status_doors(vehicleid) {
	new 
		param_status[ 15 ],
		param[ 7 ];

	GetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], param[ 2 ], param[ 3 ], param[ 4 ], param[ 5 ], param[ 6 ]);
	if(param[ 3 ] == VEHICLE_PARAMS_ON) param_status = "Atidarytos"; 
	else if(param[ 3 ] == VEHICLE_PARAMS_OFF) param_status = "Uždarytos";
	else if(param[ 3 ] == -1) param_status = "Uždarytos";
	return param_status;
}
stock param_status_bonnet(vehicleid) {
	new 
		param_status[ 15 ],
		param[ 7 ];

	GetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], param[ 2 ], param[ 3 ], param[ 4 ], param[ 5 ], param[ 6 ]);
	if(param[ 4 ] == VEHICLE_PARAMS_ON) param_status = "Atidarytas";
	else if(param[ 4 ] == VEHICLE_PARAMS_OFF) param_status = "Uždarytas"; 
	else if(param[ 1 ] == -1) param_status = "Išjungtos";
	return param_status;
}
stock param_status_boot(vehicleid) {
	new 
		param_status[ 15 ],
		param[ 7 ];

	GetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], param[ 2 ], param[ 3 ], param[ 4 ], param[ 5 ], param[ 6 ]); 
	if(param[ 5 ] == VEHICLE_PARAMS_ON) param_status = "Atidaryta";
	else if(param[ 5 ] == VEHICLE_PARAMS_OFF) param_status = "Uždaryta";
	else if(param[ 1 ] == -1) param_status = "Išjungtos";
	return param_status;
}
 

   • Naudojimas:

 

new 
    str_format[ 35 ];

format(str_format, sizeof str_format, "Variklio būsena yra %s", param_status_engine(vehicleid));

Šitos f-jos nustato transporto parametrus.

stock param_set_engine(vehicleid, bool: e_status) {
	new 
		param[ 7 ];

	if(!e_status) SetVehicleParamsEx(vehicleid, VEHICLE_PARAMS_OFF, param[ 1 ], param[ 2 ], param[ 3 ], param[ 4 ], param[ 5 ], param[ 6 ]);
	else if(e_status) SetVehicleParamsEx(vehicleid, VEHICLE_PARAMS_ON, param[ 1 ], param[ 2 ], param[ 3 ], param[ 4 ], param[ 5 ], param[ 6 ]);
	return true;
}
stock param_set_lights(vehicleid, bool: l_status) {
	new 
		param[ 7 ];
		
	if(!l_status) SetVehicleParamsEx(vehicleid, param[ 0 ], VEHICLE_PARAMS_OFF, param[ 2 ], param[ 3 ], param[ 4 ], param[ 5 ], param[ 6 ]);
	else if(l_status) SetVehicleParamsEx(vehicleid, param[ 0 ], VEHICLE_PARAMS_ON, param[ 2 ], param[ 3 ], param[ 4 ], param[ 5 ], param[ 6 ]);
	return true;
}
stock param_set_alarm(vehicleid, bool: a_status) {
	new 
		param[ 7 ];
		
	if(!a_status) SetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], VEHICLE_PARAMS_OFF, param[ 3 ], param[ 4 ], param[ 5 ], param[ 6 ]);
	else if(a_status) SetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], VEHICLE_PARAMS_ON, param[ 3 ], param[ 4 ], param[ 5 ], param[ 6 ]);
	return true;
}
stock param_set_doors(vehicleid, bool: a_status) {
	new 
		param[ 7 ];
		
	if(!a_status) SetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], param[ 2 ], VEHICLE_PARAMS_OFF, param[ 4 ], param[ 5 ], param[ 6 ]);
	else if(a_status) SetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], param[ 2 ], VEHICLE_PARAMS_ON, param[ 4 ], param[ 5 ], param[ 6 ]);
	return true;
}
stock param_set_bonnet(vehicleid, bool: a_status) {
	new 
		param[ 7 ];
		
	if(!a_status) SetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], param[ 2 ], param[ 3 ], VEHICLE_PARAMS_OFF, param[ 5 ], param[ 6 ]);
	else if(a_status) SetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], param[ 2 ], param[ 3 ], VEHICLE_PARAMS_ON, param[ 5 ], param[ 6 ]);
	return true;
}
stock param_set_boot(vehicleid, bool: a_status) {
	new 
		param[ 7 ];
		
	if(!a_status) SetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], param[ 2 ], param[ 3 ], param[ 4 ], VEHICLE_PARAMS_OFF, param[ 6 ]);
	else if(a_status) SetVehicleParamsEx(vehicleid, param[ 0 ], param[ 1 ], param[ 2 ], param[ 3 ], param[ 4 ], VEHICLE_PARAMS_ON, param[ 6 ]);
	return true;
}

   • Naudojimas:

     

   • Paaiškinimai:

         • IsPlayerInAnyVehicle(playerid) - Tikrina ar žaidėjas yra tr. priemonėje.

         • GetPlayerState(playerid) - Išgauna žaidėjo būsena.

           PLAYER_STATE_ONFOOT - reiškias žaidėjas yra pėsčias, t.y. nesėdi tr. priemonėje.

           PLAYER_STATE_PASSENGER - reiškias žaidėjas sėdi tr. priemonės keleivio vietoje.

           PLAYER_STATE_DRIVER - reiškias žaidėjas sėdi tr. priemonės vairuotojo vietoje.

         • SendClientMessage(playerid, ....) - Išsiunčia žinutę žaidėjui.

COMMAND:engineon(playerid, params[]) {
	#pragma unused params 

	new 
		vehicleid = GetPlayerVehicleID(playerid);

	if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, 0xFFFFFFFF, "{CC0000}Ši komanda veikia tik tr. priemonėje!");
	else if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendClientMessage(playerid, 0xFFFFFFFF, "{CC0000}Ši komanda veikia tik tr. priemonėje vairuotojo vietoje!");
	
	param_set_engine(vehicleid, true);
	SendClientMessage(playerid, 0xFFFFFFFF, "{FFCC00}Tr. Priemonė sėkmingai užkurta!");
	return true;
}

COMMAND:engineoff(playerid, params[]) {
	#pragma unused params 

	new 
		vehicleid = GetPlayerVehicleID(playerid);

	if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, 0xFFFFFFFF, "{CC0000}Ši komanda veikia tik tr. priemonėje!");
	else if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendClientMessage(playerid, 0xFFFFFFFF, "{CC0000}Ši komanda veikia tik tr. priemonėje vairuotojo vietoje!");
	
	param_set_engine(vehicleid, false);
	SendClientMessage(playerid, 0xFFFFFFFF, "{FFCC00}Tr. Priemonė sėkmingai užgesinta!");
	return true;
}

Jeigu radote klaidų arba kažką praleidau, rašykite temoje.

Nuoroda į komentarą
Dalintis per kitą puslapį


stock internal_veh_status(Vid, ParamNum, On, Off) {

new param[7];

GetVehicleParamsEx(Vid, param[0], param[1], param[2], param[3], param[4], param[5], param[6]);

return param[ParamNum] == VEHICLE_PARAMS_ON ? On : Off;

}

stock param_status_engine(vehicleid) {

return internal_veh_status(vehicleid, 0, "Užkurtas", "Užgesintas");

}

stock param_status_lights(vehicleid) {

return internal_veh_status(vehicleid, 1, "Įjungtos", "Išjungtos");

}

stock param_status_alarm(vehicleid) {

return internal_veh_status(vehicleid, 2, "Įjungta", "Išjungta");

}

stock param_status_doors(vehicleid) {

return internal_veh_status(vehicleid, 3, "Atidarytos", "Uždarytos");

}

stock param_status_bonnet(vehicleid) {

return internal_veh_status(vehicleid, 4, "Atidarytas", "Uždarytas");

}

stock param_status_boot(vehicleid) {

return internal_veh_status(vehicleid, 5, "Atidaryta", "Uždaryta");

}


stock internal_set_veh_status(Vid, ParamNum, bool: In) {

new param[7];

GetVehicleParamsEx(Vid, param[0], param[1], param[2], param[3], param[4], param[5], param[6]);

param[ParamNum] = In ? VEHICLE_PARAMS_ON : VEHICLE_PARAMS_OFF;

SetVehicleParamsEx(Vid, param[0], param[1], param[2], param[3], param[4], param[5], param[6]);

return true;

}

stock param_set_engine(vehicleid, bool: status) {

return internal_set_veh_status(vehicleid, 0, status);

}

stock param_set_lights(vehicleid, bool: status) {

return internal_set_veh_status(vehicleid, 1, status);

}

stock param_set_alarm(vehicleid, bool: status) {

return internal_set_veh_status(vehicleid, 2, status);

}

stock param_set_doors(vehicleid, bool: status) {

return internal_set_veh_status(vehicleid, 3, status);

}

stock param_set_bonnet(vehicleid, bool: status) {

return internal_set_veh_status(vehicleid, 4, status);

}

stock param_set_boot(vehicleid, bool: status) {

return internal_set_veh_status(vehicleid, 5, status);

}

Nuoroda į komentarą
Dalintis per kitą puslapį

 

stock internal_veh_status(Vid, ParamNum, On, Off) {
    new param[7];

    GetVehicleParamsEx(Vid, param[0], param[1], param[2], param[3], param[4], param[5], param[6]);
    return param[ParamNum] == VEHICLE_PARAMS_ON ? On : Off;
}

stock param_status_engine(vehicleid) {
    return internal_veh_status(vehicleid, 0, "Užkurtas", "Užgesintas");
}
stock param_status_lights(vehicleid) {
    return internal_veh_status(vehicleid, 1, "Įjungtos", "Išjungtos");
}
stock param_status_alarm(vehicleid) {
    return internal_veh_status(vehicleid, 2, "Įjungta", "Išjungta");
}
stock param_status_doors(vehicleid) {
    return internal_veh_status(vehicleid, 3, "Atidarytos", "Uždarytos");
}
stock param_status_bonnet(vehicleid) {
    return internal_veh_status(vehicleid, 4, "Atidarytas", "Uždarytas");
}
stock param_status_boot(vehicleid) {
    return internal_veh_status(vehicleid, 5, "Atidaryta", "Uždaryta");
}
stock internal_set_veh_status(Vid, ParamNum, bool: In) {
    new param[7];

    GetVehicleParamsEx(Vid, param[0], param[1], param[2], param[3], param[4], param[5], param[6]);
    param[ParamNum] = In ? VEHICLE_PARAMS_ON : VEHICLE_PARAMS_OFF;
    SetVehicleParamsEx(Vid, param[0], param[1], param[2], param[3], param[4], param[5], param[6]);

    return true;
}

stock param_set_engine(vehicleid, bool: status) {
    return internal_set_veh_status(vehicleid, 0, status);
}
stock param_set_lights(vehicleid, bool: status) {
    return internal_set_veh_status(vehicleid, 1, status);
}
stock param_set_alarm(vehicleid, bool: status) {
    return internal_set_veh_status(vehicleid, 2, status);
}
stock param_set_doors(vehicleid, bool: status) {
    return internal_set_veh_status(vehicleid, 3, status);
}
stock param_set_bonnet(vehicleid, bool: status) {
    return internal_set_veh_status(vehicleid, 4, status);
}
stock param_set_boot(vehicleid, bool: status) {
    return internal_set_veh_status(vehicleid, 5, status);
}

 

O kur reikšmė -1?

Nuoroda į komentarą
Dalintis per kitą puslapį

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 2811 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti šioje temoje...

×   Įklijuotas tekstas turi teksto formatavimą.   Pašalinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiškai įterpta.   Įterpti nuorodą paprastai

×   Jūsų ankstesnis pranešimas buvo atkurtas.   Išvalyti redaktorių

×   Jūs negalite įkelti nuotraukas tiesiogiai.Įkelkite arba įdėkite nuotraukas iš URL.

  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...