[Ajuda] Tamanho do Chekpoint
#3

no caso o meu й

PHP код:
#include   <    cpstream    > 
@Edit

PHP код:
//////////////////////////////////////////////////
//////////////////////////////////////////////////
///        Matraka's Checkpoint Streamer       ///
///                                            ///
/// Author: [MPA]matraka_IDG                   ///
/// Contact: msn_matraka@gtabrasil.net         ///
///                                            ///
///   ---===Infernus Development Group===---   ///
//////////////////////////////////////////////////
//////////////////////////////////////////////////
#include <a_samp>
/*Natives
native CPS_AddCheckpoint(Float:X,Float:Y,Float:Z,Float:size,Float:spawn_dist);
native CPS_IsPlayerInCheckpoint(playerid,cpid);
native CPS_IsPlayerInAnyCheckpoint(playerid,cpid);
native CPS_RemoveCheckpoint(cpid);
native CPS_GetPlayerCheckpoint(playerid);
*/
#define MAX_CHECKPOINTS 500
forward CPSERVICE_Handler();
enum cpinfo
{
    
Float:cpX,
    
Float:cpY,
    
Float:cpZ,
    
Float:cpsz,
    
cpsd,
};
new 
CPSERVICE_active;
new 
Checkpoints[MAX_CHECKPOINTS][cpinfo];
new 
UsedCPSlot[MAX_CHECKPOINTS];
new 
CPSERVICE_actualcp[MAX_PLAYERS];
stock CPS_AddCheckpoint(Float:X,Float:Y,Float:Z,Float:size,spawn_dist)
{
    new 
cpid=1;
    while(
UsedCPSlot[cpid] == 1cpid++;
    if(
CPSERVICE_active == 0){
        
SetTimer("CPSERVICE_Handler",500,true);
        
CPSERVICE_active=1;
    }
    
UsedCPSlot[cpid]=1;
    
Checkpoints[cpid][cpX]=X;
    
Checkpoints[cpid][cpY]=Y;
    
Checkpoints[cpid][cpZ]=Z;
    
Checkpoints[cpid][cpsz]=size;
    
Checkpoints[cpid][cpsd]=spawn_dist;
    return 
cpid;
}
stock CPS_IsPlayerInCheckpoint(playerid,cpid)
{
    if(!
IsPlayerInCheckpoint(playerid)) return 0;
    if(
CPSERVICE_actualcp[playerid] == cpid) return 1;
    else return 
0;
}
stock CPS_IsPlayerInAnyCheckpoint(playerid)
{
    if(!
IsPlayerInCheckpoint(playerid)) return 0;
    if(
CPSERVICE_actualcp[playerid] == 0) return 0;
    else return 
1;
}
stock CPS_GetPlayerCheckpoint(playerid) if(!IsPlayerInCheckpoint(playerid)) return 0; else return CPSERVICE_actualcp[playerid];
stock CPS_RemoveCheckpoint(cpid)
{
    if(
cpid == || UsedCPSlot[cpid] == 0) return 0;
    
UsedCPSlot[cpid]=0;
    return 
1;
}
public 
CPSERVICE_Handler()
{
    for(new 
ii<MAX_PLAYERSi++){
        new 
Float:prevdist 100000.000;
        new 
prevcp;
        for(new 
cpid=1cpid MAX_CHECKPOINTScpid++){
            if(
UsedCPSlot[cpid]) {
                new 
Float:dist;
                
dist CPSERVICE_getdist(i,Checkpoints[cpid][cpX],Checkpoints[cpid][cpY],Checkpoints[cpid][cpZ]);
                if(
dist prevdist){
                    
prevdist dist;
                     
prevcp cpid;
                }
            }
        }
        new 
cpid=prevcp;
        if(
CPSERVICE_getdist(i,Checkpoints[cpid][cpX],Checkpoints[cpid][cpY],Checkpoints[cpid][cpZ]) < Checkpoints[cpid][cpsd]) {
            if(
CPSERVICE_actualcp[i] != cpid){
                
SetPlayerCheckpoint(i,Checkpoints[cpid][cpX],Checkpoints[cpid][cpY],Checkpoints[cpid][cpZ],Checkpoints[cpid][cpsz]);
                
CPSERVICE_actualcp[i] = cpid;
            }
        } else {
            if(
CPSERVICE_actualcp[i] != 0){
                
CPSERVICE_actualcp[i] = 0;
                
DisablePlayerCheckpoint(i);
            }
        }
    }
    return 
1;
}
stock CPSERVICE_getdist(playerid,Float:x2,Float:y2,Float:z2)
{
    new 
Float:x1,Float:y1,Float:z1;
    new 
Float:tmpdis;
    
GetPlayerPos(playerid,x1,y1,z1);
    
tmpdis floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
    return 
floatround(tmpdis);

Nele diz que o 500 й o max. de CPs, mais nao consegui encontrar o parametro de tamanho
Reply


Messages In This Thread
Tamanho do Chekpoint - by N3XTMapper - 25.10.2013, 19:59
Re: Tamanho do Chekpoint - by Juniiro3 - 25.10.2013, 20:02
Re: Tamanho do Chekpoint - by N3XTMapper - 25.10.2013, 20:03
Respuesta: Tamanho do Chekpoint - by DanDRT - 25.10.2013, 20:06
Re: Tamanho do Chekpoint - by N3XTMapper - 25.10.2013, 20:08
Re: Tamanho do Chekpoint - by arakuta - 25.10.2013, 20:14
Respuesta: Re: Tamanho do Chekpoint - by DanDRT - 25.10.2013, 20:15
Re: Tamanho do Chekpoint - by Juniiro3 - 25.10.2013, 20:17
Re: Tamanho do Chekpoint - by N3XTMapper - 25.10.2013, 20:17
Respuesta: Tamanho do Chekpoint - by DanDRT - 25.10.2013, 20:24

Forum Jump:


Users browsing this thread: 1 Guest(s)