[Tutorial] Acelerando o andamento do seu script.
#1

Intro
Bom galera, sou novato em programaзгo e vou postar uma coisa simples de como acelerar o andamento de seu projeto usando apenas defines e identaзгo.

Mгos na massa
Bom, uma boa dica й reduzir as funзхes usando apenas defines.

Vejam um exemplo da reduзгo da funзгo SendClientMessage e SendClientMessageToAll.
pawn Код:
#define scm SendClientMessage
#define scmall SendClientMessageToAll
O Modo de uso й simples.
pawn Код:
scm(playerid,-1,"Mensagem para o player");
scmall(-1,"Mensagem para Todos");
Jб a funзгo nua seria assim:
pawn Код:
SendClientMessage(playerid, -1, "Mensagem Player");
SendClientMessage - Funзгo.
Playerid - Vocк sabe :)
-1 - Cor da mensagem(que no caso serб branco).
"Mensagem Player" - O Texto que irб aparecer.

SendClientMessageToAll(-1,"Mesangem Para Todos.");
As funзхes sгo basicamente as que expliquei acima, tirando o playerid que aqui nгo existe...
Indentaзгo
A identaзгo й a reduзгo do script com uma boa organizaзгo para que o scripter entenda melhor o mesmo..

Veja os exemplos abaixo:

Cуdigo em C com indentaзгo:
pawn Код:
if (unlikely(prev->policy == SCHED_RR))
   if (!prev->counter) {
      prev->counter = NICE_TO_TICKS(prev->nice);
      move_last_runqueue(prev);
   }
 
switch (prev->state) {
   case TASK_INTERRUPTIBLE:
      if (signal_pending(prev)) {
         prev->state = TASK_RUNNING;
         break;
      }
 
   default:
      del_from_runqueue(prev);
}
 
prev->need_resched = 0;
O mesmo cуdigo, sem indentaзгo:
pawn Код:
if (unlikely(prev->policy == SCHED_RR))
if (!prev->counter) {
prev->counter = NICE_TO_TICKS(prev->nice);
move_last_runqueue(prev);
}
switch (prev->state) {
case TASK_INTERRUPTIBLE:
if (signal_pending(prev)) {
prev->state = TASK_RUNNING;
break;
}
default:
del_from_runqueue(prev);
}
prev->need_resched = 0;
Fonte: http://pt.wikipedia.org/wiki/Indenta%C3%A7%C3%A3o

Bom galera isso foi um simples tutorial, lembrando que nгo sei quase nada de programaзгo somente sigo a logica e estudo pelo wiki sa-mp e wikipedia
Reply
#2

https://sampforum.blast.hk/showthread.php?tid=260576
https://sampforum.blast.hk/showthread.php?tid=170773
https://sampforum.blast.hk/showthread.php?tid=269667
Reply
#3

Eu nгo conhecia estes tutoriais, pois, como disse sou novo ainda e estou em busca de mais conhecimento e tambem quero ensinar alguma coisa Desculpa se jб existe tutoriais do mesmo tipo e mais complexos..
Reply
#4

Oque й 'Indentaзгo?'
Reply
#5

Quote:
Originally Posted by delete
Посмотреть сообщение
Oque й 'Indentaзгo?'
Legal ter gostado do tutorial e ter prestado tanta atenзгo que nгo sabe que ser humado erra
Reply
#6

Quote:

Legal ter gostado do tutorial e ter prestado tanta atenзгo que nгo sabe que ser humado erra

Persistiu tanto no erro que ainda nгo editou o tуpico pra corrigir o erro.
Reply
#7

Bom intenзгo, mas incompleto. Aguardando seu @edit com mais implementaзхes.
Reply
#8

Sу para constar, isto nгo meche na velocidade do script ou do servidor.

Nem compila mais rбpido sу й Organizaзгo.
Reply
#9

Quote:
Originally Posted by [Full]Garfield[XDB]
Посмотреть сообщение
Sу para constar, isto nгo meche na velocidade do script ou do servidor.

Nem compila mais rбpido sу й Organizaзгo.
І

@Topic No Coments..
Reply
#10

cara nгo adianta vocк arrumar cуdigos loucos ae , sendo que vocк nem sabe fazer uma macro.


isso aqui funciona ?
pawn Код:
#define scm SendClientMessage
#define scmall SendClientMessageToAll
cara vocк nгo ganha nada postando aqui , entгo se for postar primeira coisa aprenda .
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)