robil som taký jednoduchá race system, hrač dá prikaz, v ňom určí počet závodnikov (napr. 3) a vybere auto.
Robil som to pomocou kontroli premennej (v kode vypísané). Je to také amatérske a chcem sa vás opýtať, či sa to nedá najeko lepšie a ľahšie napísať, pretože toto je i zĺhavejšie a by som sa niečo nové priučil čo by mi pomohlo do budúcna.
btw. ten systém mi šiel, tak ako som chcel, len sa chcem naučiť lepší systém.
Chyby/varování kompilátoru a při běhu: --
Kód:
CMD:createzavod(playerid, params[])
{
error správy
bridgeauto = CreateVehicle(402,-1634.3036,570.2895,39.5560,314.9972,random(255),random(255),1,0);
zalozenybridge = 1;
PutPlayerInVehicle(playerid, bridgeauto,0);
pripojenychzavodnikov++;
TogglePlayerControllable(playerid,0);
format(str,sizeof(str),"{007700}Hráč {FF9900}%s{007700} založil závod {FF9900}Bridge{007700}",Jmeno(playerid));
format(str2,sizeof(str2),"Počet zavodníkov je {FF9900}%d/%d{007700}. Zostáva 60sekund na pripojenie",pripojenychzavodnikov,zavodnicibridge);
format(str3,sizeof(str3),"Pre pripojenie {FF9900}/zavod Bridge");
SendClientMessageToAll(0x007700FF,str);
SendClientMessageToAll(0x007700FF,str2);
SendClientMessageToAll(0x007700FF,str3);
cakanie = SetTimer("OdpocetBridge1",20000,1);
return 1;
}
/*Všímajte si viac toho postupu:
if(zavodnicibridge == 4)
{
if(pripojenýchzavodnikov == 1 )
*/
//takže sa chcem spýtať, ako to ľahšie zapísať. Lebo napríklad do 10 závodnikov by to bolo až moc.
CMD:zavod(playerid, params[])
{
new str[256];
if(zalozenybridge == 0) return SendClientMessage(playerid, 0xFF0000FF,"[ ! ] {FF9900}Zavod neni založený");
if(zavodnicibridge == 2)
{
if(pripojenychzavodnikov == 1)
{
bridgeauto = CreateVehicle(402,-1631.4750,567.4609,39.5436,314.9977,random(255),random(255),1,0);
pripojenychzavodnikov++;
TogglePlayerControllable(playerid,0);
PutPlayerInVehicle(playerid, bridgeauto, 0);
format(str,sizeof(str),"{007700}Hráč{FF9900} %s{007700} sa napojil do zavodu ({FF9900}%d/%d{007700} zavodnikov)\nZávod odštartovaný!",pripojenychzavodnikov,zavodnicibridge);
KillTimer(cakanie);
SendClientMessageToAll(0x007700FF,str);
SetTimer("OdpocetZavodu",3000,0);
finalodpocet = SetTimer("OdpocetZavodu",3000,1);
KillTimer(cakanie3);
KillTimer(cakanie2);
KillTimer(cakanie);
BridgeZavodnici[playerid] = 1;
pripojenychzavodnikov = 0;
}
}
if(zavodnicibridge == 3)
{
if(pripojenychzavodnikov == 1)
{
bridgeauto = CreateVehicle(402,-1631.4750,567.4609,39.5436,314.9977,random(255),random(255),1,0);
pripojenychzavodnikov++;
TogglePlayerControllable(playerid,0);
PutPlayerInVehicle(playerid, bridgeauto, 0);
BridgeZavodnici[playerid] = 1;
format(str,sizeof(str),"{007700}Hráč {FF9900}%s {007700}sa napojil do zavodu ({FF9900}%d/%d{007700} zavodnikov)",pripojenychzavodnikov,zavodnicibridge);
SendClientMessageToAll(0x007700FF,str);
}
if(pripojenychzavodnikov == 2)
{
bridgeauto = CreateVehicle(402,-1639.9576,564.6311,39.3077,314.9983,random(255),random(255),1,0);
pripojenychzavodnikov++;
TogglePlayerControllable(playerid,0);
PutPlayerInVehicle(playerid, bridgeauto, 0);
format(str,sizeof(str),"{007700}Hráč {FF9900}%s{007700} sa napojil do zavodu ({FF9900}%d/%d{007700} zavodnikov)\nZávod odštartovaný!",pripojenychzavodnikov,zavodnicibridge);
KillTimer(cakanie);
SendClientMessageToAll(0x007700FF,str);
BridgeZavodnici[playerid] = 1;
pripojenychzavodnikov = 0;
finalodpocet = SetTimer("OdpocetZavodu",1,1);
KillTimer(cakanie3);
KillTimer(cakanie2);
KillTimer(cakanie);
}
}
if(zavodnicibridge == 4)
{
if(pripojenychzavodnikov == 1)
{
bridgeauto = CreateVehicle(402,-1631.4750,567.4609,39.5436,314.9977,random(255),random(255),1,0);
pripojenychzavodnikov++;
TogglePlayerControllable(playerid,0);
PutPlayerInVehicle(playerid, bridgeauto, 0);
BridgeZavodnici[playerid] = 1;
format(str,sizeof(str),"{007700}Hráč {FF9900}%s {007700}sa napojil do zavodu ({FF9900}%d/%d{007700} zavodnikov)",pripojenychzavodnikov,zavodnicibridge);
SendClientMessageToAll(0x007700FF,str);
}
if(pripojenychzavodnikov == 2)
{
bridgeauto = CreateVehicle(402,-1639.9576,564.6311,39.3077,314.9983,random(255),random(255),1,0);
pripojenychzavodnikov++;
TogglePlayerControllable(playerid,0);
PutPlayerInVehicle(playerid, bridgeauto, 0);
BridgeZavodnici[playerid] = 1;
format(str,sizeof(str),"{007700}Hráč {FF9900}%s{007700} sa napojil do zavodu ({FF9900}%d/%d{007700} zavodnikov)",pripojenychzavodnikov,zavodnicibridge);
SendClientMessageToAll(0x007700FF,str);
}
if(pripojenychzavodnikov == 3)
{
bridgeauto = CreateVehicle(402,-1637.1326,561.8021,39.3039,314.9993,random(255),random(255),1,0);
pripojenychzavodnikov++;
PutPlayerInVehicle(playerid, bridgeauto, 0);
TogglePlayerControllable(playerid,0);
format(str,sizeof(str),"{007700}Hráč {FF9900}%s{007700} sa napojil do zavodu ({FF9900}%d/%d{007700} zavodnikov)\nZávod odštartovaný!",pripojenychzavodnikov,zavodnicibridge);
KillTimer(cakanie);
SendClientMessageToAll(0x007700FF,str);
BridgeZavodnici[playerid] = 1;
SetTimer("OdpocetZavodu",1,0);
pripojenychzavodnikov = 0;
}
}
return 1;
}
Dotaz
Twixo 1
Popis problému:
Zdravím,
robil som taký jednoduchá race system, hrač dá prikaz, v ňom určí počet závodnikov (napr. 3) a vybere auto.
Robil som to pomocou kontroli premennej (v kode vypísané). Je to také amatérske a chcem sa vás opýtať, či sa to nedá najeko lepšie a ľahšie napísať, pretože toto je i zĺhavejšie a by som sa niečo nové priučil čo by mi pomohlo do budúcna.
btw. ten systém mi šiel, tak ako som chcel, len sa chcem naučiť lepší systém.
Chyby/varování kompilátoru a při běhu:
--
Kód:
Edited by TwixoDodatečné poznámky:
--
Link to comment
Share on other sites
6 odpovědí na tuto otázku
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now