Guten Morgen liebe Community,
ja, ich bin es schon wieder tut mir leid wenn in letzter Zeit ein paar Systeme von mir kommen
Hier also ein Clan System, was auf Wunsch von PinguinLP gescriptet wurde
[tabmenu]
[tab='Allgemeine Informationen','http://forum.sa-mp.de/wcf/icon/infoM.png']
[subtab='Funktionen','http://forum.gamerzhost.de/wcf/icon/codeS.png']
Also, kommen wir nur zu ein paar Funktionen, ich will diese auch ein wenig erklären, also wird der Text ein wenig länger:
CreateClan(clanname[])
So die Funktion CreateClan erstellt eine Clan mit einem bestimmten Namen !
Dort wird noch keine Person hinzugefügt und nichts !
PS: Maximale Länge des Clan Namens 24
AddPlayerClan(playerid, clanname[], bool:var)
So, ich erkläre mal kurz wie man diese Funktion nutzen könnte anhand von einem Beispiel:
AddPlayerClan(playerid, "Kaliber_ist_cool", true); //Hier wäre playerid jetzt Leader dieses Clans wegen dem true am ende !
AddPlayerClan(playerid, "Kaliber_ist_cool", false); //Hier wäre playerid jetzt ein ganz normaler Member dieses Clans wegen false !
GetClanName(playerid)
Diese Funktion gibt den ClanNamen von dem Spieler wieder.
DeleteClan(name[])
Löscht einen Clan und alle Leute die in diesem Clan sind, fliegen raus.
/////////////////////////////////////////////////////////
In diesem System gibt es auch ein Punkte System, also man kann gegen andere Clans Krieg führen !
Deshalb folgende Befehle:
/clanranglist
Zeigt die 5 besten Clans mit Punktzahl an.
/war
Mit dem Befehl kann der Leader eines Clans gegen einen anderen Clan kämpfen und man kann einstellen wie lange der Krieg gehen soll (max. 60 Minuten).
/aKrieg
Der andere Clan kann den Krieg aktzeptieren und dann kann man folgendes machen:
public OnClanWarStart(clanname1[], clanname2[])
Dieser Callback wird im GameMode aufgerufen und ich gebe mal ein Beispiel, was man da machen könnte:
//So sollte das im GameMode aussehen:
forward OnClanWarStart(clanname1[], clanname2[]);
public OnClanWarStart(clanname1[], clanname2[])
{
for(new i; i<MAX_PLAYERS; i++)
{
if(!strcmp(clanname1, GetClanName(i), false))
{
//Hier wissen wir jetzt, dass sich i in dem Clan 1 befindet
SetPlayerPos(i, 0, 0, 0); //So alle die in Clan 1 sind, werden jetzt zum 0 Punkt teleportiert !
}
}
return 1;
}
Der Punkt ist nämlich der, sobald ein Clan Mitglied während eines Krieges ein generisches Clan Mitglied tötet, bekommt der Clan 1nen Punkt
Genauso funktioniert der Callback:
public OnClanWarEnd(clanname1[], clanname2[])
[subtab='Wichtig','http://www.rezepte-guru.de/template/images/icon_stern.gif']
Falls ihr in eurem Script strtok nutzt, kann es zu einen Fehler kommen, wenn ihr folgendes nicht macht:
//Nur für die die strtok nutzen
#define USE_STRTOK 1 //vor der Include definieren
#include <clanwar> //Hier erst includen
[subtab='Download','http://www.projekt-deutsch.de/templates/cback/images/download.gif']
Pastebin: Pastebin
Mediafire: Download
[/tabmenu]
So ich würde mich über ein kleines Feedback freuen
PS: Falls Bugs auftreten sollten, bitte sofort melden.
mfg.
//Edit:
-
Spoiler anzeigen Text
-
Spoiler anzeigen Neue Pastebin Datei, hatte einen Fehler
-
Spoiler anzeigen OnClanWarEnd hinzugefügt (ganz vergessen)