10-05-2021, 19:30
@Nerph:
Nie ma żadnych pułapek, tworzymy tabele w bazie danych, która ma kolumny: id, id gracza (nie mylić z id które się ma w danej erze), typ eventu ('kowal') oraz era (nie wiem czy przy resecie ery baza jest czyszczona - jeśli tak to kolumna niepotrzebna). Upraszczając tak jak Hastin zasugerował, czyli event kowala jako wykucie max zbroi, wystarczy przy wykuciu zbroi zrobić select do tabeli, który sprawdzi czy już jest wykuta zbroja, jeśli jest, to nie dodajemy do bazy, jeśli nie ma, to znak że jesteśmy pierwsi. Wtedy (po zapisie rekordu do bazy) odpala się funkcja, która wysyła wieść oraz funkcja, która wpisuje gracza do galerii bohaterów. Żadna filozofia, a mamy załatwione z głowy i od razu po wykuciu event wpada w ręce gracza, tak jak alchemik, stolarz itd. Jeśli zostajemy przy broni + zbroi na event, to dochodzi sprawdzenie czy dany gracz już wykuł drugi przedmiot eventowy, jeśli tak, wpada event, jeśli nie, to nie.
Cytat:Samo posiadanie obu rzeczy nie jest rozwiązaniem ponieważ równie dobrze może prowadzić do nadużyć, gdy dwóch różnych kowali prześle po jednym przedmiocie do osoby trzeciej - wówczas event mógłby wygrać kowal (a nawet nie-kowal), który nie wykonał żadnego z nich.
Jakimś rozwiązaniem jest tu dodatkowe pole zapisujące twórcę przedmiotu, ale powiedziałbym, że wtedy trzeba by dobrze ustalić warunek sprawdzający wszystkie inne przedmioty w grze. Poza tym problemem mogłoby być przerzucanie przedmiotów przez klan (kolejne pole zachowujące pierwotnego autora).
Nie ma żadnych pułapek, tworzymy tabele w bazie danych, która ma kolumny: id, id gracza (nie mylić z id które się ma w danej erze), typ eventu ('kowal') oraz era (nie wiem czy przy resecie ery baza jest czyszczona - jeśli tak to kolumna niepotrzebna). Upraszczając tak jak Hastin zasugerował, czyli event kowala jako wykucie max zbroi, wystarczy przy wykuciu zbroi zrobić select do tabeli, który sprawdzi czy już jest wykuta zbroja, jeśli jest, to nie dodajemy do bazy, jeśli nie ma, to znak że jesteśmy pierwsi. Wtedy (po zapisie rekordu do bazy) odpala się funkcja, która wysyła wieść oraz funkcja, która wpisuje gracza do galerii bohaterów. Żadna filozofia, a mamy załatwione z głowy i od razu po wykuciu event wpada w ręce gracza, tak jak alchemik, stolarz itd. Jeśli zostajemy przy broni + zbroi na event, to dochodzi sprawdzenie czy dany gracz już wykuł drugi przedmiot eventowy, jeśli tak, wpada event, jeśli nie, to nie.