Raised This Month: $ Target: $400
 0% 

[ES] Esta bien como "optimise" el code?


  
 
 
Thread Tools Display Modes
Author Message
Raddish
BANNED
Join Date: Jul 2008
Location: Argentina
Old 01-22-2010 , 01:31   [ES] Esta bien como "optimise" el code?
#1

NO OPTIMIZADO:


PHP Code:
case 1:
        {
            if (
g_bancoz[id] == 5)
            {
                
zp_colored_print(id"^x04[ZA]^x01 Has llegado al Nivel Maximo!")
            }
            if (
g_bancoz[id] == 4)
            {
                if (
g_puntosz[id] >= 24)
                {
                    
g_bancoz[id]++
                    
g_puntosz[id] -= 24
                    g_gastadosz
[id] += 24
                
}
            }
            if (
g_bancoz[id] == 3)
            {
                if (
g_puntosz[id] >= 12)
                {
                    
g_bancoz[id]++
                    
g_puntosz[id] -= 12
                    g_gastadosz
[id] += 12
                
}
            }
            if (
g_bancoz[id] == 2)
            {
                if (
g_puntosz[id] >= 6)
                {
                    
g_bancoz[id]++
                    
g_puntosz[id] -= 6
                    g_gastadosz
[id] += 6
                
}
            }
            if (
g_bancoz[id] == 1)
            {
                if (
g_puntosz[id] >= 3)
                {
                    
g_bancoz[id]++
                    
g_puntosz[id] -= 3
                    g_gastadosz
[id] += 3
                
}
            }
            if (
g_bancoz[id] == 0)
            {
                if (
g_puntosz[id] >= 1)
                {
                    
g_bancoz[id]++
                    
g_puntosz[id] -= 1
                    g_gastadosz
[id] += 1
                
}
            }
            
menu_puntosz(id)
        } 

"OPTIMIZADO":


PHP Code:
case 1:
        {
            static 
bancoz
            bancoz 
g_bancoz[id]
            switch(
bancoz)
            {
                case 
5:menu_puntosz(id)
                case 
4:
                {
                    if (
g_puntosz[id] >= 24)
                    {
                        
g_bancoz[id]++
                        
g_puntosz[id] -= 24
                        g_gastadosz
[id] += 24
                    
}
                }
                case 
3:
                {
                    if (
g_puntosz[id] >= 12)
                    {
                        
g_bancoz[id]++
                        
g_puntosz[id] -= 12
                        g_gastadosz
[id] += 12
                    
}
                }
                case 
2:
                {
                    if (
g_puntosz[id] >= 6)
                    {
                        
g_bancoz[id]++
                        
g_puntosz[id] -= 6
                        g_gastadosz
[id] += 6
                    
}
                }
                case 
1:
                {
                    if (
g_puntosz[id] >= 3)
                    {
                        
g_bancoz[id]++
                        
g_puntosz[id] -= 3
                        g_gastadosz
[id] += 3
                    
}
                }
                case 
0:
                {
                    if (
g_puntosz[id] >= 1)
                    {
                        
g_bancoz[id]++
                        
g_puntosz[id] -= 1
                        g_gastadosz
[id] += 1
                    
}
                }
            }
            
menu_puntosz(id)
        } 
Raddish is offline
01101101
BANNED
Join Date: Nov 2009
Location: 9`su 09`n0n7e`r0f76a
Old 01-22-2010 , 03:16   Re: [ES] Esta bien como "optimise" el code?
#2

optimice

Eso que pusiste es la misma mierda distinto olor, ves porque te digo que te falta aprender MUUUCHO?

PHP Code:
new Float:mejoria[] = { 220.0250.0280.0310.0350.0 }

//////////////
{
    case 
1:
    {
        
g_speed[id] > client_print(idprint_chat"Mejoria maxima") : g_speed[id]++
    }
    
show_menu_pija(id)
}

/////////////

set_pev(idpev_maxspeedmejoria[g_speed[id]]) 
Habia que pensar mucho?
01101101 is offline
Raddish
BANNED
Join Date: Jul 2008
Location: Argentina
Old 01-22-2010 , 08:13   Re: [ES] Esta bien como "optimise" el code?
#3

Creo que entendi, aver si decime si esta bien esto. no me compila pero we

es la primera ves q uso eso de

variable > numero ? mayor : menor

u.u

PHP Code:
/* Script generated by Pawn Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN    "New Plugin"
#define AUTHOR    "Unknown"
#define VERSION    "1.0"

new g_puntos[33]
new 
g_speed[33]

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
// Add your own code here
}

public 
asd(id)
{
    new 
Float:mejoria[] = { 220.0250.0280.0310.0350.0 }
    new const 
puntos1[] = { 1361224 }
    
    new 
g_speed[33]
    new 
key 1
    
switch(key)
    {
        case 
1:
        {
            
g_speed[id] > client_print(idprint_chat"Mejoria maxima") : g_speed[id]++
            
g_puntos[id] >= puntos1[g_speed[id]] ? g_puntos[id] -= puntos1[g_speed[id]] : client_print(idprint_chat"no te alcanza los puntos")
        }
        
show_menu_pija(id)
    }
    
    
/////////////
    
    
set_pev(idpev_maxspeedmejoria[g_speed[id]]

Raddish is offline
01101101
BANNED
Join Date: Nov 2009
Location: 9`su 09`n0n7e`r0f76a
Old 01-22-2010 , 08:22   Re: [ES] Esta bien como "optimise" el code?
#4

Quote:
Originally Posted by Raddish View Post
Creo que entendi, aver si decime si esta bien esto. no me compila pero we

es la primera ves q uso eso de

variable > numero ? mayor : menor

u.u

PHP Code:
/* Script generated by Pawn Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN    "New Plugin"
#define AUTHOR    "Unknown"
#define VERSION    "1.0"

new g_puntos[33]
new 
g_speed[33]

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
// Add your own code here
}

public 
asd(id)
{
    new 
Float:mejoria[] = { 220.0250.0280.0310.0350.0 }
    new const 
puntos1[] = { 1361224 }
    
    new 
g_speed[33]
    new 
key 1
    
switch(key)
    {
        case 
1:
        {
            
g_speed[id] > client_print(idprint_chat"Mejoria maxima") : g_speed[id]++
            
g_puntos[id] >= puntos1[g_speed[id]] ? g_puntos[id] -= puntos1[g_speed[id]] : client_print(idprint_chat"no te alcanza los puntos")
        }
        
show_menu_pija(id)
    }
    
    
/////////////
    
    
set_pev(idpev_maxspeedmejoria[g_speed[id]]

No entendiste, eso era pseudo codigo.

Un ejemplo practico seria esto

PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

new g_speed[33]
new 
g_puntos[33]
new 
Float:mejoria[] = { 220.0250.0280.0310.0350.0 }
new 
valor[] = { 2461050 }

public 
plugin_init() 
{
    
register_plugin("","","")
    
    
// registras prethink etc
}

public 
prethink(id)
{
    
set_pev(idpev_maxspeedmejoria[g_speed[id]])
}

public 
menu(idkey)
{
    switch(
key)
    {
        case 
1:
        {
            if(
g_puntos[id] >= valor[g_speed[id]])
            {
                
g_puntos[id] -= valor[g_speed[id]]
                
g_speed[id]++
            }
            else 
client_print(idprint_chat"No tienes puntos")
        }
    }

01101101 is offline
fechu
BANNED
Join Date: Sep 2009
Location: aliedmod
Old 01-22-2010 , 08:25   Re: [ES] Esta bien como "optimise" el code?
#5

perdon que pregunte .
q es ese plugin?
fechu is offline
Send a message via MSN to fechu Send a message via Skype™ to fechu
SylvertCs
BANNED
Join Date: Sep 2009
Location: San Nicolas-Buenos Aires
Old 01-22-2010 , 08:25   Re: [ES] Esta bien como "optimise" el code?
#6

raddish no era q te ibas del pawn para siempre?
SylvertCs is offline
Send a message via MSN to SylvertCs
01101101
BANNED
Join Date: Nov 2009
Location: 9`su 09`n0n7e`r0f76a
Old 01-22-2010 , 08:26   Re: [ES] Esta bien como "optimise" el code?
#7

Quote:
Originally Posted by fechu View Post
perdon que pregunte .
q es ese plugin?
El ejemplo que yo le di es un pseudo plugin que sube la speed.

Quote:
Originally Posted by Raddish View Post
NO OPTIMIZADO:


INTENTO DE OPTIMIZADO:
Fixed
01101101 is offline
Old 01-22-2010, 08:27
01101101
This message has been deleted by 01101101. Reason: asd
Raddish
BANNED
Join Date: Jul 2008
Location: Argentina
Old 01-22-2010 , 08:31   Re: [ES] Esta bien como "optimise" el code?
#8

Aver, probe con el expmod ese q hise xd,

PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <colorchat>
#include <fakemeta>
#include <fvault>

#define MAX_LVL 10
#define MAX_EXP 1000
#define STARTER_EXP 1

#define TASK_SHOWHUD 2100

#define PLUGIN_NAME "Experience Mod"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "Raddish"

#define MESSAGE_PREFIX "[EXP MOD]"

//---------------------
//      HABILITIES
//----------------------

new health[] = { 1002003004005006007008009001000 }
new 
armor[] = { 50100150200250300350400450500 }

//----------------------

new const Nivel_List[MAX_LVL] = { 1002003004005006007008009001000 }

new const 
vault[] = "Experience Mod"

new Nivel[33], Experience[33], g_msgsync

public client_putinserver(id)
{
    
LoadExp(id)
    
set_task(1.0"ShowHUD"id+TASK_SHOWHUD__"b")
}

public 
client_disconnect(idremove_task(id+TASK_SHOWHUD)

public 
plugin_init()
{
    
register_plugin(
    
PLUGIN_NAME,
    
PLUGIN_VERSION,
    
PLUGIN_AUTHOR)
    
    
g_msgsync CreateHudSyncObj()
    
    
register_cvar("Experience_mod"PLUGIN_VERSIONFCVAR_SERVER|FCVAR_SPONLY)
    
register_cvar("killer_exp""50")
    
RegisterHam(Ham_Killed"player""fw_PlayerKilled")
    
RegisterHam(Ham_Spawn"player""fw_PlayerSpawn"1)
    
}

public 
fw_PlayerKilled(victimattackershouldgib)
{
    if (
attacker == victim || is_user_connected(attacker))
    {
        if (
Experience[attacker] >= MAX_EXP)
        {
            
Experience[attacker] = MAX_EXP
            ColorChat
(attackerGREEN"^x04%s^x01 Has llegado al limite de experiencia^x04 %d"MESSAGE_PREFIXMAX_EXP)
            return 
PLUGIN_HANDLED
        
}
        
Experience[attacker] += get_cvar_num("killer_exp")
        
SaveExp(attacker)
    }
    return 
PLUGIN_CONTINUE
}

public 
fw_PlayerSpawn_Post(id)
{
    if (!
is_user_alive(id))
        return;
    
    
set_task(0.5"give_habilitie"id)
    
    
check_nivel(id)
}

public 
check_nivel(id)
{
    
Nivel[id] = 0
    
while(Experience[id] >= Nivel_List[Nivel[id]])
    {
        
Nivel[id]++
    }
}

SaveExp(id)
{
    static 
name[32];
    
get_user_name(idnamesizeof(name) - 1);
    
    new 
data[16];
    
num_to_str(Experience[id], datasizeof(data) - 1);
    
    
fvault_set_data(vaultnamedata);
    
    
check_nivel(id)
}

LoadExp(id)
{
    new 
name[32]
    
get_user_name(idnamecharsmax(name))
    
    new 
data[16]
    if(
fvault_get_data(vaultnamedatacharsmax(data)))
    {
        
Experience[id] = str_to_num(data)
    }
    else
    {
        
Experience[id] = STARTER_EXP
    
}
}

public 
Message(id)
    if (
is_user_connected(id))
        
ColorChat(idGREEN"^x04%s^x01 This server is using %s^x04 v%s^x01 By^x04 %s"MESSAGE_PREFIXPLUGIN_NAMEPLUGIN_VERSIONPLUGIN_AUTHOR)
    
public 
give_habilitie(id)
{
    
set_pev(idpev_healthhealth[Nivel[id]])
    
set_pev(idpev_armorvaluearmor[Nivel[id]])
    
}

public 
ShowHUD(id)
{
    if (!
is_user_connected(id))
        return;
    
    static 
name[32]
    
get_user_name(idnamecharsmax(name))
    
    
set_hudmessage(2552552550.010.8510.03.02.01.0, -1)
    
ShowSyncHudMsg(idg_msgsync"[Health: %d] | [Armor: %d]^n[Experience: %d/%d] | [Nivel: %d/%d]"get_user_health(id), get_user_armor(id), Experience[id], MAX_EXPNivel[id], MAX_LVL)

Raddish is offline
Raddish
BANNED
Join Date: Jul 2008
Location: Argentina
Old 01-22-2010 , 08:32   Re: [ES] Esta bien como "optimise" el code?
#9

Quote:
Originally Posted by SylvertCs View Post
raddish no era q te ibas del pawn para siempre?
Yo nunca dije que me iba para siempre solo que ya me aburria
Raddish is offline
01101101
BANNED
Join Date: Nov 2009
Location: 9`su 09`n0n7e`r0f76a
Old 01-22-2010 , 08:37   Re: [ES] Esta bien como "optimise" el code?
#10

Hay un monton de errores ahi que me dan paja corregir.
Lo unico que cambie porque fui lo primero que note (porque esta en la primer linea lol) es unos defines asquerosos que usabas para poner maximos.

Ahi lo corregi, igual el code sigue desastroso.

PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <colorchat>
#include <fakemeta>
#include <fvault>

#define STARTER_EXP 1

#define TASK_SHOWHUD 2100

#define PLUGIN_NAME "Experience Mod"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "Raddish"

#define MESSAGE_PREFIX "[EXP MOD]"

//---------------------
//      HABILITIES
//----------------------

new health[] = { 1002003004005006007008009001000 }
new 
armor[] = { 50100150200250300350400450500 }

//----------------------

new const Nivel_List[] = { 1002003004005006007008009001000 }

new const 
vault[] = "Experience Mod"

new Nivel[33], Experience[33], g_msgsync

public client_putinserver(id)
{
    
LoadExp(id)
    
set_task(1.0"ShowHUD"id+TASK_SHOWHUD__"b")
}

public 
client_disconnect(idremove_task(id+TASK_SHOWHUD)

public 
plugin_init()
{
    
register_plugin(
    
PLUGIN_NAME,
    
PLUGIN_VERSION,
    
PLUGIN_AUTHOR)
    
    
g_msgsync CreateHudSyncObj()
    
    
register_cvar("Experience_mod"PLUGIN_VERSIONFCVAR_SERVER|FCVAR_SPONLY)
    
register_cvar("killer_exp""50")
    
RegisterHam(Ham_Killed"player""fw_PlayerKilled")
    
RegisterHam(Ham_Spawn"player""fw_PlayerSpawn"1)
    
}

public 
fw_PlayerKilled(victimattackershouldgib)
{
    if (
attacker == victim || is_user_connected(attacker))
    {
        if (
Experience[attacker] >= Nivel_List[sizeof Nivel_List 1])
        {
            
Experience[attacker] = Nivel_List[sizeof Nivel_List 1]
            
ColorChat(attackerGREEN"^x04%s^x01 Has llegado al limite de experiencia^x04 %d"MESSAGE_PREFIXNivel_List[sizeof Nivel_List 1])
            return 
PLUGIN_HANDLED
        
}
        
Experience[attacker] += get_cvar_num("killer_exp")
        
SaveExp(attacker)
    }
    return 
PLUGIN_CONTINUE
}

public 
fw_PlayerSpawn_Post(id)
{
    if (!
is_user_alive(id))
        return;
    
    
set_task(0.5"give_habilitie"id)
    
    
check_nivel(id)
}

public 
check_nivel(id)
{
    
Nivel[id] = 0
    
while(Experience[id] >= Nivel_List[Nivel[id]])
    {
        
Nivel[id]++
    }
}

SaveExp(id)
{
static 
name[32];
get_user_name(idnamesizeof(name) - 1);

new 
data[16];
num_to_str(Experience[id], datasizeof(data) - 1);

fvault_set_data(vaultnamedata);

check_nivel(id)
}

LoadExp(id)
{
new 
name[32]
get_user_name(idnamecharsmax(name))

new 
data[16]
if(
fvault_get_data(vaultnamedatacharsmax(data)))
{
Experience[id] = str_to_num(data)
}
else
{
Experience[id] = STARTER_EXP
}
}

public 
Message(id)
if (
is_user_connected(id))
ColorChat(idGREEN"^x04%s^x01 This server is using %s^x04 v%s^x01 By^x04 %s"MESSAGE_PREFIXPLUGIN_NAMEPLUGIN_VERSIONPLUGIN_AUTHOR)

public 
give_habilitie(id)
{
    
set_pev(idpev_healthhealth[Nivel[id]])
    
set_pev(idpev_armorvaluearmor[Nivel[id]])
    
}

public 
ShowHUD(id)
{
    if (!
is_user_connected(id))
        return;
    
    static 
name[32]
    
get_user_name(idnamecharsmax(name))
    
    
set_hudmessage(2552552550.010.8510.03.02.01.0, -1)
    
ShowSyncHudMsg(idg_msgsync"[Health: %d] | [Armor: %d]^n[Experience: %d/%d] | [Nivel: %d/%d]"get_user_health(id), get_user_armor(id), Experience[id], Nivel_List[sizeof Nivel_List 1], Nivel[id], sizeof Nivel_List)

01101101 is offline
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 04:31.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode