Quote:
Originally Posted by EditPawn
Eu sei disso, eu sу coloquei o retorno para substituir uma funзгo.
@EDIT
Um exemplo:
PHP код:
new Level[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
Level[playerid] = 1;
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
if(Level[playerid] == 1) Level[killerd]++;
else if(Level[playerid] == 2) Level[killerd] += 5;
else if(Level[playerid] == 3) Level[killerd] += 10;
SetPlayerScore(killerid, Level[killerid]);
return 1;
}
|
Ainda sim nesse seu exemplo, o uso de if ou switch continua sendo desnecessбrio...
Pois este problema pode ser resolvido com matemбtica simples...
Se vocк tem como entrada o level do player, e pretende efetuar um calculo proporcional ao level, de forma aritmйtica.
Gerando a seguinte cadeia de saнda: (+5)
Entгo vocк vocк tem as seguintes amostras:
lvl_1 = 1
lvl_2 = 5
lvl_3 = 10
lvl_4 = 15
1
1 * 5
2 * 5
3 * 5
4 * 5
Essa pode ser uma boa maneira de vocк melhorar os scripts do seu gamemode...
O uso do if / switch tem uma necessidade, e muitas as vezes as pessoas acabam utilizando por ser uma saнda rбpida, e isso com certeza vai de contra o bom desempenho do seu cуdigo completo. Muitos problemas podem ser resolvidos sem a utilizaзгo de estruturas de controle.
Isso faz um bem danado, porque pra cada CMP, JMP, JE, JNE, etc... que estarб sendo evitado em baixo nнvel, seu cуdigo e o seu usuбrio final irгo agradecer em questхes de desempenho.
Lembrando que estou comentando isso apenas para contribuir, nгo quero contrariar vocк ou a sua metodologia.