Neongenesis

Kann wer helfen?

Recommended Posts

Und zwar.

Es geht darum mit wenig aufwand recht viel zuerreichen. Zu jeder klasse in WoW sind ja bekanntlich je 3 Skillungen verfügbar das macht dann im groben 30 Skillungen. Da gibts nun 2 Varianten wie man etwas lösen könnte.

Variante 1: 30 Spalten und nur 1 Zeile für je ein Wert 0-9

+------+-----------------+-----------------+-----------------+-----------------+------------------+

| Leer | Klasse1_Skill1 | Klasse1_Skill2 | Klasse1_Skill3 | Klasse2_Skill1 | KlasseX_SkillY |

+------+-----------------+-----------------+-----------------+-----------------+------------------+

| Leer | Wert 3...

+------+-----------------+-----------------+-----------------+-----------------+------------------+

Variante 2: 2 Spalten und 30 Zeilen, Klasse_Skill und Wert 0-9

+-----------------+------+

| KlasseX_SkillY | Wert |

+-----------------+------+

| Klasse1_Skill1 | 0

+-----------------+------+

| Klasse1_Skill2 | 3

+-----------------+------+

| Klasse1_Skill3 | x

+-----------------+------+

...

Das wäre das erste.

Das Zweite ist wie kann man Variante 1 oder 2 nun effektiv auslesen das man immer wenn der wert 0 ist die Klasse an sich anzeigt und keine Skillung und wenn der wert != 0 ist die Klasse mit dem entsprechenden Skill ausgibt.

Vllt kann mir dabei jemand helfen bin da grad ein bissel am verzweifeln weil der aufwand dem nutzen im nichts nachsteht so wie meine ansetzt im mom sind. Oder es gibt sogar noch einen anderen Lösung's ansatz, wäre da sehr verbunden.

MFG

Link to comment
Share on other sites

Hm, was willst du den machen?

Ich versteh momentan noch nicht so ganz was du mit Wert 0-9 meinst.

Willst du das in eine Datenbank packen?

Mit welchen Werten willst du hinterher suchen?

Link to comment
Share on other sites

Variante 3 :D

3 Tabellen.

1. Class

CREATE TABLE `class` (  `classid` tinyint(11) unsigned NOT NULL auto_increment,  `classname` varchar(64) NOT NULL,  PRIMARY KEY  (`classid`)) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=11 ;-- -- Daten für Tabelle `class`-- INSERT INTO `class` (`classid`, `classname`) VALUES (1, 'Death Knight');INSERT INTO `class` (`classid`, `classname`) VALUES (2, 'Druid');INSERT INTO `class` (`classid`, `classname`) VALUES (3, 'Hunter');INSERT INTO `class` (`classid`, `classname`) VALUES (4, 'Mage');INSERT INTO `class` (`classid`, `classname`) VALUES (5, 'Paladin');INSERT INTO `class` (`classid`, `classname`) VALUES (6, 'Priest');INSERT INTO `class` (`classid`, `classname`) VALUES (7, 'Rogue');INSERT INTO `class` (`classid`, `classname`) VALUES (8, 'Shaman');INSERT INTO `class` (`classid`, `classname`) VALUES (9, 'Warlock');INSERT INTO `class` (`classid`, `classname`) VALUES (10, 'Warrior');

2. Talent

CREATE TABLE `talent` (  `talentid` tinyint(3) unsigned NOT NULL auto_increment,  `classid` tinyint(3) unsigned NOT NULL,  `talentname` varchar(64) NOT NULL,  PRIMARY KEY  (`talentid`),  FOREIGN KEY (classid) REFERENCES class(classid)) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;-- -- Daten für Tabelle `talent`-- INSERT INTO `talent` (`talentid`, `classid`, `talentname`) VALUES (1, 2, 'Feral');INSERT INTO `talent` (`talentid`, `classid`, `talentname`) VALUES (2, 2, 'Restoration');INSERT INTO `talent` (`talentid`, `classid`, `talentname`) VALUES (3, 2, 'Moonkin');INSERT INTO `talent` (`talentid`, `classid`, `talentname`) VALUES (4, 5, 'Holy');INSERT INTO `talent` (`talentid`, `classid`, `talentname`) VALUES (5, 5, 'Protection');INSERT INTO `talent` (`talentid`, `classid`, `talentname`) VALUES (6, 5, 'Retribution');INSERT INTO `talent` (`talentid`, `classid`, `talentname`) VALUES (7, 6, 'Holy');INSERT INTO `talent` (`talentid`, `classid`, `talentname`) VALUES (8, 6, 'Shadow');

3. Recruit

CREATE TABLE `recruit` (  `recruitid` int(10) unsigned NOT NULL auto_increment,  `talentid` tinyint(4) unsigned NOT NULL,  `recruitcount` tinyint(3) unsigned NOT NULL,  `comment` varchar(255) NOT NULL,  PRIMARY KEY  (`recruitid`),  FOREIGN KEY (talentid) REFERENCES talent(talentid)) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;-- -- Daten für Tabelle `recruit`-- INSERT INTO `recruit` (`recruitid`, `talentid`, `recruitcount`, `comment`) VALUES (1, 1, 1, '');INSERT INTO `recruit` (`recruitid`, `talentid`, `recruitcount`, `comment`) VALUES (2, 5, 2, '');

Mit diesem SQL lassen sich dann für alle Talente die eingetragen sind die entsprechende Klasse auslesen und die Anzahl an zu Recrutierenden Membern.

SELECT talentname, classname, recruitcount FROM talent tINNER JOIN class c ON t.classid = c.classidLEFT OUTER JOIN recruit r ON t.talentid = r.talentidORDER BY c.classname, t.talentname

Habe da nur paar Beispieldaten reingefüllt.

Das kannst du dir ja dann in PHP in ein array füllen dass du am ende quasi hast:

$class['priest']['total'] = 3;$class['priest']['holy'] = 1;$class['priest']['shadow'] = 2;$class['druid']['total'] = 1;$class['druid']['feral'] = 0;$class['druid']['moonkin'] = 1;$class['rogue']['total'] = 0;

Dadurch kannst du anhand vom total bestimmen ob die Talente angezeigt werden oder einfach nur die Klasse ohne Talent Details ;)

Link to comment
Share on other sites

mrdiablo schrieb:

CREATE TABLE `class` (  `classname` varchar(64) NOT NULL, );

2. Talent

CREATE TABLE `talent` (  `talentname` varchar(64) NOT NULL,);

wird nen bissel unübersichtlich inner ausgabe, wenne 64 byte für classname und talentname nimmst, oder meinst net? 16 sollten vollkommen ausreichen, naja, bei talentname vllt 32.

Aber sonst schauts top aus =)

Link to comment
Share on other sites

Jo, bissl weniger würds auch tun, aber an der Ausgabe sollte es eh nichts ändern, da ja beim Auslesen hier nur die Anzahl der Zeichen zurück kommt die das Wort da drin auch wegnimmt, die 64 Byte sind ja nur der Platz den die Datenbank dafür in Anspruch nimmt.

Link to comment
Share on other sites

Hi,

So hab teilweise nen Admin Panel fertig bekommen wer testen will kann dies auf biegen und brechen gerne tun dafür ist es im mom da, wer fehler findet bitte hier posten.

Sollte wer verbesserungsvorschläge an der ausgabe haben dann bitte auch hier schreiben.

MFG

Link to comment
Share on other sites

Hatte rogues editiert -> auf -5, dann sind sie ganz verschwunden.

Evtl. beim Anlegen auch irgendwie in Gruppen anlegen.

	Death-Knight	Blood	Frost	Unholy	Druid	Feral	Restoration	Balance	Hunter	Beast-Master	Marksman	Survival	Mage	Arcane	Fire	Frost	Paladin	Holy	Protection	Retribution

Link to comment
Share on other sites

da es ja keine -suche gibt hab ich mir gedacht das man wenn man 0 eingibt man es ja eig löschen möchte also ist -5 <=0 also will man es löschen so springt er also gleich in die löschen abfrage rein und schwubs weg ist das gesuch.

if ($_POST['recruitcount'] < 1) {         redirect(FUSION_SELF.$aidlink."&step=delete&recruitid=" . $_GET['recruit_id']);}

so hatte ich mir das gedacht, kann es auch anders machen das es nur zu löschen geht wenn man expliziet löschen will :D

das andere bin ich noch am überlegen klingt aber gut und werd ich denke ich bei gelegenheit ändern ;)

Link to comment
Share on other sites

Was es kann:

- Hinzufügen

* nur wenn der Wert eine Zahl und nicht Leer

* wenn schon ein Gesuch existiert wird dies nicht unter den zu suchenden angezeigt

- Löschen

* Über den Button kann nur gelöscht werden wenn man das Popup mit OK bestätigt

- Bearbeiten

* wenn der Wert des zu suchenden kleiner/gleich null ist wird es gewertet als würde man es nicht mehr brauchen und das Gesuch wird gelöscht.

* Es kann als Wert nur eine Zahl eingegeben werden

- die Reihenfolge ist fest und kann nicht verschoben werden

- stat den langen namen des skills wird das symbol angezeigt

- wird mit der maus über das symbol gefahren wird der Name angezeigt

- Es kann im mom noch ein Wert von 1-255 als gesucht eingetragen werden

ToDo:

- Umschreiben für Panel und Admin-Interface

- Farbeanpassung bei dringenden Gesuchen

- Anpassen des Menu zum auswählen der einzelnen skillz

- die Reihenfolge der Klassen kann frei gewählt werden

- das ganze wird nur den Administratoren und Super Administratoren zur verfügeung stehen

- fehler wie "Notice: Undefined variable: aidlink in " sind im mom beabsichtigt werden dann nicht mehr auftreten

Wer anregungen hat hier Posten.

Danke

MFG

Link to comment
Share on other sites

"Farbeanpassung bei dringenden Gesuchen" würde ich so verstehen, dass ein Gesuch eine fest definierte Farbe hat.. ABER wenn es GANZ dringend ist noch auffälliger erscheint.

Daher kann ich nicht ganz nachvollziehen wieso aus einer Farbpalette auszuwählen sein soll.

Link to comment
Share on other sites

Die farben sind dazu da um den Zahlen mehr ausdruck zu verleihen. Der Name der Klasse an sich hat eine fest definierte Farbe und zwar Rot. Allg. gilt sobald für eine Skillung einer Klasse bei mehereren Gesuchen eine Farbe ausgesucht wurde erscheint der Name der Klasse in rot, soll dies nicht mehr so sein wählt man einfach die Farbe weiß bei allen gesuchen der Klasse an und der Name der Klasse ist wieder der Alte, weiß.

Aber für vorschläge wie man da eventuell was ändern könnte wenn es denn ganz dringend ist immer her damit ich versuch es dann umzusetzten.

Link to comment
Share on other sites

kennt einer vllt ein gutes proxy programm was für wow funktioniert ...bzw ein allgemeinen proxy client?

Zur Begründung,

Neongenesis und ich basteln zz an einem proxy sockets V5 / V4 server um die laags in wow zu minimieren üf raids und so:)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now