SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Español/Spanish > Lanzamientos/Releases

Reply
 
Thread Tools Display Modes
Old 16/05/2010, 05:30 AM   #1
Jesus^
Huge Clucker
 
Jesus^'s Avatar
 
Join Date: Apr 2010
Location: 127.0.0.1
Posts: 367
Reputation: 0
Default Como crear Facciones y Agregarle Vehiculos

Bueno.
He Visto a Muchos Preguntando como Crear Facciones y/o Como agregar Vehiculos a Las Facciones.
Bueno.
Crear Facciones:

Paso 1.

Nos dirijimos a "new JoinPed[52][1] = {" Podemos buscarlo con Ctrl +F Bien que es esto? Pues es donde se ponen los skins que vana usar nuestras facciones Por ejemplo Usaremos la 294 que es Wozzie.
pawn Code:
new JoinPed[53/*Sumarle 1 ya que agregamos 1 skin mas*/][1] = {
{280},//POLICE_FORCE
{281},
{282},
{283},
{284},
{285},
{288},
{71},
{166},
{295},
{148},
{286},//FBI/ATF
{164},
{163},
{287},//NATIONAL_GUARD
{285},
{70},//FIRE/AMBULANCE
{274},
{275},
{276},
{277},
{278},
{279},
{258},//LA_COSA_NOSTRA
{127},
{126},
{125},
{124},
{113},
{111},
{98},
{120},//YAKUZA
{121},
{122},
{123},
{169},
{186},
{228},
{127},//HITMANS
{165},
{186},
{93},
{141},
{148},//NEWS_REPORTERS
{188},
{187},
{255},//TAXI_CAB_COMPANY
{253},
{59},//DRIVING/FLYING_SCHOOL
{60},//DRIVING/FLYING_SCHOOL
{76},//DRIVING/FLYING_SCHOOL
{150}, //agregar la coma
{294}
};

Paso 2.

Bien si usaste Ctrl + F apreta F3 para dirijirte al siguiente JoinPed, sino puedes Dirijirte a OnPlayerText y Buscar los "case":

pawn Code:
switch (SelectCharID[playerid])
{
case 1: //Police Force
{ etc..

Vamos hasta el ultimo de los Case, osea el 11 y creamos otro case:
pawn Code:
case 11: //Driving/Flying School
{
if(SelectCharPlace[playerid] == 1) { SetPlayerSkin(playerid, JoinPed[48][0]); SelectCharPlace[playerid] = 2; ChosenSkin[playerid] = JoinPed[48][0]; }
else if(SelectCharPlace[playerid] == 2) { SetPlayerSkin(playerid, JoinPed[49][0]); SelectCharPlace[playerid] = 3; ChosenSkin[playerid] = JoinPed[49][0]; }
else if(SelectCharPlace[playerid] == 3) { SetPlayerSkin(playerid, JoinPed[50][0]); SelectCharPlace[playerid] = 4; ChosenSkin[playerid] = JoinPed[50][0]; }
else if(SelectCharPlace[playerid] == 4) { SetPlayerSkin(playerid, JoinPed[51][0]); SelectCharPlace[playerid] = 1; ChosenSkin[playerid] = JoinPed[51][0]; }
}
case 12: //Nuestra Faccion
if(SelectCharPlace[playerid] == 1) { SetPlayerSkin(playerid, JoinPed[48][0]); SelectCharPlace[playerid] = 1; ChosenSkin[playerid] = JoinPed[52/*Se debe poner 1 mas q el maximo de la faccion anterior*/][0]; }
}
return 0;
}

Paso 3.
Nos Dirijimos a SetPlayerSpawn, veremos muchos "If" buscaremos este:
pawn Code:
if(IsAnInstructor(playerid)) //Driving/Flying School spawn
{
if(SchoolSpawn[playerid] == 0)
{
SetPlayerToTeamColor(playerid);
SetPlayerPos(playerid, -2032.6810,-117.4816,1035.1719);
SetPlayerFacingAngle(playerid, 275.1114);
SetPlayerInterior(playerid,3);
PlayerInfo[playerid][pInt] = 3;
}
else if(SchoolSpawn[playerid] == 1)
{
SetPlayerToTeamColor(playerid);
SetPlayerPos(playerid, 414.4144,2531.9580,19.1565);
SetPlayerFacingAngle(playerid, 4.6505);
SetPlayerInterior(playerid,0);
PlayerInfo[playerid][pInt] = 0;
}
return 1;
}

Crearemos otro if como este:
pawn Code:
if (PlayerInfo[playerid][pMember] == 12/*Numero de la Faccion*/ || PlayerInfo[playerid][pLeader] == 12) //Estos son los Spawn de nuestra faccion
{
SetPlayerToTeamColor(playerid);
SetPlayerPos(playerid, X,Y,Z);
SetPlayerInterior(playerid,0);
PlayerInfo[playerid][pInt] = 0;
return 1;
}

Nota: Cada ves que creemos una faccion debemos sumarle 1 mas la faccion anterior, osea Faccion Anterior (ej: 12) + 1 = 13 (la siugiente faccion seria la 13)

Paso 4.
Nos dirijimos a ShowStats(playerid,targetid) y Buscamos estos If:
pawn Code:
if(PlayerInfo[targetid][pMember] == 4 || PlayerInfo[targetid][pLeader] == 4) { ttext = "Medico"; }
else if(gTeam[targetid] == 3 || gTeam[targetid] == 4) { ttext = "Civiles"; }
else if(PlayerInfo[targetid][pMember] == 1 || PlayerInfo[targetid][pLeader] == 1) { ttext = "Oficial"; }
else if(PlayerInfo[targetid][pMember] == 2 || PlayerInfo[targetid][pLeader] == 2) { ttext = "Agente FBI"; }
else if(PlayerInfo[targetid][pMember] == 3 || PlayerInfo[targetid][pLeader] == 3) { ttext = "Guarda Naiona"; }
else if(PlayerInfo[targetid][pMember] == 4 || PlayerInfo[targetid][pLeader] == 4) { ttext = "Bomberos"; }
else if(PlayerInfo[targetid][pMember] == 5 || PlayerInfo[targetid][pLeader] == 5) { ttext = "LCN"; }
else if(PlayerInfo[targetid][pMember] == 6 || PlayerInfo[targetid][pLeader] == 6) { ttext = "Yakuza"; }
else if(PlayerInfo[targetid][pMember] == 8 || PlayerInfo[targetid][pLeader] == { ttext = "Hitmen"; }
else if(PlayerInfo[targetid][pMember] == 9 || PlayerInfo[targetid][pLeader] == 9) { ttext = "Reporteros"; }
else if(PlayerInfo[targetid][pMember] == 10 || PlayerInfo[targetid][pLeader] == 10) { ttext = "Taxistas"; }
else if(PlayerInfo[targetid][pMember] == 11 || PlayerInfo[targetid][pLeader] == 11) { ttext = "Licencieros"; }

Le agregaremos otro mas:
pawn Code:
else if(PlayerInfo[targetid][pMember] == 12/*Recuerden el NUmero de la Faccion*/ || PlayerInfo[targetid][pLeader] == 12) { ttext = "Nombre Faccion"; }

Paso 5.

Si bajamos unas cuantas lineas encontraremos algunos if como este:
pawn Code:
if(gTeam[targetid] == 5 || PlayerInfo[targetid][pFMember] < 255)//The 2 Organisations
{

Pues bien son los Rangos de nuestra faccion bajaremos y agregaremos un nuevo if como este:
pawn Code:
else if(PlayerInfo[targetid][pMember] == 12 || PlayerInfo[targetid][pLeader] == 12)
{
if(PlayerInfo[targetid][pRank] == 1) { rtext = "En Entrenamiento"; }
else if(PlayerInfo[targetid][pRank] == 2) { rtext = "Sargento"; }
else if(PlayerInfo[targetid][pRank] == 3) { rtext = "General"; }
else { rtext = "En Entrenamiento"; }

Paso 6.

Bien ya estamos terminando buscaremos el comando /invite y pondremos esto:
pawn Code:
else if(PlayerInfo[playerid][pLeader] == 12) { PlayerInfo[para1][pTeam] = 12; gTeam[para1] = 12; ftext = "Faccion"; ChosenSkin[para1] = 294(Skin del Jefe); SetPlayerSkin(para1,294(Skin del Jefe)); }

Bueno eso va despues de los muchos If y else if que hay ahi
}

Ultimo Paso.
else if(level == 12) { PlayerInfo[para1][pChar] = 294 (Skin del Jefe); } //

Eso es lo ultimo, se encuentra en el comando /makeleaker.Debemos agregarlo despues de los If y Else If q hay ahi.

Extra:

Implementar Comando /f o /familia

Nos Dirijimos a nuestro comando /f y buscamos el ultimo if(member==**)
Agregamos otro If pero que aumente el numero de igualacion, en nuestro caso: 12:
pawn Code:
if(member==12)
{

Una ves hecho esto agregaremos los rangos que pusimos antes, este es un ejemplo:
pawn Code:
if(PlayerInfo[playerid][pRank] == 5) { format(string, sizeof(string), "**(( Jefa %s: %s. ))**", sendername, result); }
else if(PlayerInfo[playerid][pRank] == 4) { format(string, sizeof(string), "**(( Lady %s: %s. ))**", sendername, result); }
else if(PlayerInfo[playerid][pRank] == 3) { format(string, sizeof(string), "**(( Señorita %s: %s. ))**", sendername, result); }
else if(PlayerInfo[playerid][pRank] == 2) { format(string, sizeof(string), "**(( Novata %s: %s. ))**", sendername, result); }
else if(PlayerInfo[playerid][pRank] == 1) { format(string, sizeof(string), "**(( Aspirante %s: %s. ))**", sendername, result); }
else { format(string, sizeof(string), "**(( Aspirante %s: %s. ))**", sendername, result); }
SendFamilyMessage(PlayerInfo[playerid][pMember], TEAM_BLUE_COLOR, string)

Tienes q cambiarle los rangos, etc...

Al hacer esto tambien debes agregar otro if un poco mas abajo:
if(leader==**)
Le agregas uno con el numero de la faccion y con el siguiente codigo: (es un ejemplo)
pawn Code:
format(string, sizeof(string), "**(( Jefa %s: %s. ))**", sendername, result);
SendFamilyMessage(PlayerInfo[playerid][pLeader], TEAM_AZTECAS_COLOR, string);

Tutorial De Roymer. ( o de quien sea )

Ahora, Como Agregar Vehiculos A las Facciones?
Empezare:

Creamos Un Forward, con el id o lo que sea xD!
Ejemplo:
pawn Code:
forward ejemplo(carid);

Luego, Una Callback con los Vehiculos:
pawn Code:
public yakuza(carid)
{
    if((carid >= ejemplo) && (carid <= Hasta))
    {
        return 1;
    }
    return 0;
}
Explico:
"Desde": Seria el Id del Auto desde donde empesaria los autos de la faccion
"Hasta": Seria Donde Terminara del "Desde" xD!!!!!!
Ejemplo:
pawn Code:
public ejemplo(carid)
{
    if((carid >= 305) && (carid <= 311))
    {
        return 1;
    }
    return 0;
}
Los Autos de mi faccion serian desde el id 305 hasta el id 311.

Luego, Agregamos un If en
pawn Code:
public OnPlayerStateChange(playerid, newstate, oldstate)
Con la Siguiente Funcion:
pawn Code:
if(ejemplo(newcar))
        {
          if(PlayerInfo[playerid][pMember] == IDdeFaccion||PlayerInfo[playerid][pLeader] == IDdeFaccion) { }
          else {
             RemovePlayerFromVehicle(playerid);
          SendClientMessage(playerid, COLOR_GREY,"Usted no pertenece a esta faccion.");}
        }

y Listo!!!!!

PD: Lee la PD 2

PD2: Lee la PD 3

PD3: No se Explicar Muy Bien :S


Espero que les sirva.
__________________




Last edited by TheChaoz; 23/08/2012 at 11:54 PM. Reason: Added [Tutorial] tag
Jesus^ is offline   Reply With Quote
Old 16/05/2010, 10:01 AM   #2
aRvaroMetal
Big Clucker
 
Join Date: Feb 2010
Posts: 114
Reputation: 0
Default Re: [Tutorial] Como crear Facciones y Agregarle Vehiculos

Jajajaja, tienes razón amigo no te sabes explicar bien... Yo no vi en ningún lado el ''desde'' xDDD
Pero todos te entendemos!
Una pregunta, como invito a los demás a mi facción? Puedo usar /invite, pero aparece esto (That player is currently Wanted / a Different Team / or already a Family Member.)
Y según al que invité dice que no le aparece nada...
A ver, mas preguntas...
a) Cómo pongo un Skin para cada uno de los rangos?
b) Cómo pongo vehiculos por sí, no desde el número tal hasta tal. Sino el vehiculo 3 y el 8 y los intermedios no.
PD: Le la pd 2
PD2: Me hizo gracia eso xd
aRvaroMetal is offline   Reply With Quote
Old 20/05/2010, 07:33 PM   #3
leoals
Big Clucker
 
leoals's Avatar
 
Join Date: Feb 2010
Location: In the streets of Los Santos
Posts: 181
Reputation: 0
Default Re: [Tutorial] Como crear Facciones y Agregarle Vehiculos

men me podrias ayudar esque me sale un error
__________________
leoals is offline   Reply With Quote
Old 20/05/2010, 07:43 PM   #4
aRvaroMetal
Big Clucker
 
Join Date: Feb 2010
Posts: 114
Reputation: 0
Default Re: [Tutorial] Como crear Facciones y Agregarle Vehiculos

Umm... Yo solo es por aportar, pero si tienes un error y no nos lo dices como quieres que te lo arreglemos? :S
aRvaroMetal is offline   Reply With Quote
Old 20/05/2010, 08:10 PM   #5
leoals
Big Clucker
 
leoals's Avatar
 
Join Date: Feb 2010
Location: In the streets of Los Santos
Posts: 181
Reputation: 0
Default Re: [Tutorial] Como crear Facciones y Agregarle Vehiculos

bueno mi error esque cuando copilo, teniendo todo lo del tuto, me sale error que me dice que borre todos los playertopoin
__________________
leoals is offline   Reply With Quote
Old 20/05/2010, 08:24 PM   #6
Cesar_Biker
Gangsta
 
Cesar_Biker's Avatar
 
Join Date: Nov 2009
Location: Linux Kernel
Posts: 678
Reputation: 0
Default Re: [Tutorial] Como crear Facciones y Agregarle Vehiculos

A lo mejor es que no tienes definido "Playertopoint"
pawn Code:
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);//arriba del todo
pawn Code:
public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)//abajo del todo después del ultimo "}"
{
  if(IsPlayerConnected(playerid))
    {
        new Float:oldposx, Float:oldposy, Float:oldposz;
        new Float:tempposx, Float:tempposy, Float:tempposz;
        GetPlayerPos(playerid, oldposx, oldposy, oldposz);
        tempposx = (oldposx -x);
        tempposy = (oldposy -y);
        tempposz = (oldposz -z);
        //printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
        if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
        {
            return 1;
        }
    }
    return 0;
}
__________________
Cesar_Biker is offline   Reply With Quote
Old 20/05/2010, 08:30 PM   #7
leoals
Big Clucker
 
leoals's Avatar
 
Join Date: Feb 2010
Location: In the streets of Los Santos
Posts: 181
Reputation: 0
Default Re: [Tutorial] Como crear Facciones y Agregarle Vehiculos

gracias
__________________
leoals is offline   Reply With Quote
Old 20/05/2010, 09:00 PM   #8
Cesar_Biker
Gangsta
 
Cesar_Biker's Avatar
 
Join Date: Nov 2009
Location: Linux Kernel
Posts: 678
Reputation: 0
Default Re: [Tutorial] Como crear Facciones y Agregarle Vehiculos

Quote:
Originally Posted by leoals
gracias
De nada, aquí estamos para ayudar.
__________________
Cesar_Biker is offline   Reply With Quote
Old 20/05/2010, 10:51 PM   #9
leoals
Big Clucker
 
leoals's Avatar
 
Join Date: Feb 2010
Location: In the streets of Los Santos
Posts: 181
Reputation: 0
Default Re: [Tutorial] Como crear Facciones y Agregarle Vehiculos

Quize agregar una faccion de mafia rusa al sv de LA-RP pero cuando termine de hacer la faccion le di compilar y no compila la venta de compilacion se queda en blanco alguien me ayuda?
__________________
leoals is offline   Reply With Quote
Old 21/05/2010, 11:56 AM   #10
Cesar_Biker
Gangsta
 
Cesar_Biker's Avatar
 
Join Date: Nov 2009
Location: Linux Kernel
Posts: 678
Reputation: 0
Default Re: [Tutorial] Como crear Facciones y Agregarle Vehiculos

Puede que te saltases algún "}" o "{"
__________________
Cesar_Biker is offline   Reply With Quote
Reply

Thread Tools
Display Modes

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


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Tutorial] Cómo crear un sistema de registro con Dini MrDeath537 Lanzamientos/Releases 58 07/08/2014 02:41 PM
[Tutorial]Crear facciones, muy sencillo TiNcH010 Lanzamientos/Releases 18 06/12/2013 05:33 PM
[Tutorial] Como crear comandos. Miguel Lanzamientos/Releases 34 07/10/2013 06:49 PM
[Tutorial] Como crear facciones ValenTiiN Español/Spanish 16 15/09/2010 01:55 PM
[Pedido de Tutorial] Crear Facciones [J]ulian Español/Spanish 0 06/02/2010 06:53 PM


All times are GMT. The time now is 04:07 AM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.