Posts: 84
Threads: 23
Joined: Jul 2015
Reputation:
0
Hola,
He visto que mucha gente suele hacer includes y poner ahн variables o sistemas y despuйs cargarlo en el archivo pawno. їEs recomendable hacer йso?. Yo supongo que la ъnica utilidad que tiene es no tener que poner muchas lнneas en el gamemode pero no estoy seguro de si tiene alguna otra utilidad.
Un saludo, gracias.
Posts: 169
Threads: 40
Joined: Oct 2011
Reputation:
0
Otra utilidad serнa que por casos raros tu gm lo tiene alguien mбs y el no poder compilarlo por falta de includes o no poder quitarle sistemas.
Posts: 32
Threads: 5
Joined: Feb 2015
Reputation:
0
Esto se hace solo por mantener el orden dentro del GM
Posts: 84
Threads: 23
Joined: Jul 2015
Reputation:
0
Muchas gracias a todos.
En mi caso їEstarнa bien crear varios includes y meter en unos las variables del jugador, en otra los comandos de ayuda, administraciуn...? es decir, la mayorнa de cosas que no sean callbacks
Posts: 263
Threads: 6
Joined: Mar 2012
Estoy seguro que es un millon de veces mejor separar por modulos los codigos, asн se hace en todos los lenguajes (menos pawn
). No necesariamente son includes, tambiйn otros archivos .pwn. Ejemplo
gm.pwn
pawn Код:
#include "house.pwn"
#include "vehicle.pwn"
CMD:crearcasa(playerid, params[]) {
new House:createdHouse = House_create(strval(params));
printf("casa id %d creada!", _:createdHouse);
}
CMD:crearvehiculo(playerid, params[]) {
new Vehicle:createdVehicle = Vehicle_create(411, ...);
printf("vehiculo %d creado", _:createdVehicle);
}
house.pwn
pawn Код:
enum houseEnum {
name[24],
price
}
// estatico, solo este archivo puede leer o escribir datos. Nosotros le damos metodos para obtener los
// datos de una manera mas clara
static houseArray[MAX_HOUSES][houseEnum];
stock House:House_create(name, price) {
...
return createdHouse;
}
stock House_GetPrice(House:house) {
return houseArray[_:house][price];
}
Asн el codigo se ve mucho mбs legible, y es mбs facil de mantener y modificar con el tiempo, ademбs reduce muchisisimo la probabilidad de bugs!Entre mбs claro y simple el cуdigo, es MEJOR. La complejidad es mala, en TODOS los aspectos de la programaciуn
Posts: 229
Threads: 5
Joined: Sep 2015
Reputation:
0
Yo personalmente prefiero tener todo en un archivo .pwn.
Posts: 155
Threads: 17
Joined: Feb 2013
Reputation:
0
Dividiendolo por includes puedes tenerlo mбs organizado, pero creo yo que serнa un poco mбs dificil de usar ya que el pawno no tiene una forma cуmoda de abrir varios archivos, es tu decisiуn de como hacer pero te recomiendo dividirlo todo y buscar una alternativa a Pawno que soporte lo anteriormente dicho.
Posts: 263
Threads: 6
Joined: Mar 2012
Quote:
Originally Posted by Kevln
Tu recomendacion es invalido para mi. Me parece un poco ironico y a la vez estupido separar todo por partes o varios archivos cuando la dependencia de cada parte no es independiente como lo es en PHP por ejemplo. Y es practicamente la razon por la cual me gusta tener todo en un archivo cuando hablamos sobre SA-MP scripting.
Y tener varios archivos no es nada organizado (en SA-MP scripting), para mi. Se me hace un cochinero que no se entiende y en algunos casos no es logico en terminos del sentido comun.
|
Infernux, toda la razуn cuando hablas del IDE. Los IDE generalmente t edejan tener varios archivos abiertos a la vez. Para programar por modulos, o archivos seria mejor usar otro IDE (yo usaba el notepad++) pero sin dudas es mucho mas organizado cada cosa en su archivo. En el 99% de los lenguajes de programaciуn, se considera una mala prбctica tener un solo archivo con mas de 2.000 lineas, y aca es comun que los Gm tengan 60.000