- 7 Settembre 2010
- 72
- 0
- Miglior risposta
- 0
Salve, dato l'enorme successo delle prime votazioni IC di Ocean View RP, abbiamo deciso di pubblicare il nostro sistema elettorale affinchè chiunque possa utilizzare questa idea e possa rendere il proprio server un pò più carino e RP!!!
Questo sistema è stato scriptato su una gm Carlito's RolePlay, quindi così per com'è può funzionare solo su questa GM e derivate come la SAGC, per farle girare bene il sistema anche su altre gm occorre modificare quelle variabili con quelle che avete voi ad esempio:
PlayerInfo[playerid][pAdmin]: nella CRP viene usata questa tipologia di variabile per memorizzare il livello admin di un player in game, quindi basta sostituirla con la variabile che usate nella vostra GM per la stessa funzione;
COLOR_ADMINCMD & COLOR_ADMINDUTY: corrisponde a 0x007E96F6
COLOR_GREY: corrisponde a 0xAFAFAFAA
COLOR_WHITE: corrisponde a 0xFFFFFFAA
COLOR_GREEN: corrisponde a 0x33AA33AA
PlayerToPoint: è una funzione che serve a calcolare se si è dentro un raggio X da un punto, ossia se si è nei pressi di quel punto, potete sostituirla con qualsiasi funzione della vostra gm che faccia la stessa cosa;
Per evitare che la gente possa votare più volte, abbiamo deciso di memorizzare i voti su un file, in modo che ad ogni comando di voto il sistema controlla se ha già votato o no.
Iniziamo con le dichiarazioni inserite nella GM:
Inizializzare la variabile elezioni in OnGameModeInit()
Passiamo ai comandi per l'admin, comandi che servono ad abilitare/disabilitare le elezioni e a caricare la lista dei candidati, queste istruzioni vanno dentro OnPlayerCommandText e assicuratevi che all'inizio ci siano le dichiarazioni citate:
Posto di seguito i comandi per i player che permettono di votare (da noi solo se si è nella stanza planning del terzo piano City Hall, ma potete cambiarla a piacere):
Passiamo al resto, qui di seguito la dichiarazione della funzione di controllo sui votanti:
(La funzione restituisce l'id del player in caso abbia già votato, altrimenti restituisce 255 se non trova il nome del player nel file)
Infine, dato che col comando /vota appare una lista dove scegliere il nome del candidato preferito, concludiamo col postare il codice che va inserito nella funzione OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]):
Una funzione che viene usata per dividere le stringhe e separare e diverse parole è strtok:
Spero di non aver scordato nulla, in caso di problemi o informazioni su questo sistema potete postare, contattarmi qui o in alternativa mandarmi un pm nel forum di Ocean View (lo trovate scrivendo Ocean view RP su Google).
Spero che questo sistema vi piaccia e auguro a tutti buon divertimento e buon RP a nome dello Staff di Ocean View RP!!!
Questo sistema è stato scriptato su una gm Carlito's RolePlay, quindi così per com'è può funzionare solo su questa GM e derivate come la SAGC, per farle girare bene il sistema anche su altre gm occorre modificare quelle variabili con quelle che avete voi ad esempio:
PlayerInfo[playerid][pAdmin]: nella CRP viene usata questa tipologia di variabile per memorizzare il livello admin di un player in game, quindi basta sostituirla con la variabile che usate nella vostra GM per la stessa funzione;
COLOR_ADMINCMD & COLOR_ADMINDUTY: corrisponde a 0x007E96F6
COLOR_GREY: corrisponde a 0xAFAFAFAA
COLOR_WHITE: corrisponde a 0xFFFFFFAA
COLOR_GREEN: corrisponde a 0x33AA33AA
PlayerToPoint: è una funzione che serve a calcolare se si è dentro un raggio X da un punto, ossia se si è nei pressi di quel punto, potete sostituirla con qualsiasi funzione della vostra gm che faccia la stessa cosa;
Per evitare che la gente possa votare più volte, abbiamo deciso di memorizzare i voti su un file, in modo che ad ogni comando di voto il sistema controlla se ha già votato o no.
Iniziamo con le dichiarazioni inserite nella GM:
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Inizializzare la variabile elezioni in OnGameModeInit()
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Passiamo ai comandi per l'admin, comandi che servono ad abilitare/disabilitare le elezioni e a caricare la lista dei candidati, queste istruzioni vanno dentro OnPlayerCommandText e assicuratevi che all'inizio ci siano le dichiarazioni citate:
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Posto di seguito i comandi per i player che permettono di votare (da noi solo se si è nella stanza planning del terzo piano City Hall, ma potete cambiarla a piacere):
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Passiamo al resto, qui di seguito la dichiarazione della funzione di controllo sui votanti:
(La funzione restituisce l'id del player in caso abbia già votato, altrimenti restituisce 255 se non trova il nome del player nel file)
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Infine, dato che col comando /vota appare una lista dove scegliere il nome del candidato preferito, concludiamo col postare il codice che va inserito nella funzione OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]):
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Una funzione che viene usata per dividere le stringhe e separare e diverse parole è strtok:
Codice:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Spero di non aver scordato nulla, in caso di problemi o informazioni su questo sistema potete postare, contattarmi qui o in alternativa mandarmi un pm nel forum di Ocean View (lo trovate scrivendo Ocean view RP su Google).
Spero che questo sistema vi piaccia e auguro a tutti buon divertimento e buon RP a nome dello Staff di Ocean View RP!!!
Ultima modifica: