From: <vra...@us...> - 2004-01-05 03:35:36
|
Update of /cvsroot/darkeyetool/det/src/gui In directory sc8-pr-cvs1:/tmp/cvs-serv19884 Modified Files: PersonenKomponenteGUIwx.h PersonGUIPersonenKomponentewx.cpp Log Message: SF bei RKP-Defs sind jetzt auch Auswahlmengen statt einfacher Mengen Index: PersonenKomponenteGUIwx.h =================================================================== RCS file: /cvsroot/darkeyetool/det/src/gui/PersonenKomponenteGUIwx.h,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** PersonenKomponenteGUIwx.h 5 Jan 2004 02:45:14 -0000 1.26 --- PersonenKomponenteGUIwx.h 5 Jan 2004 03:35:33 -0000 1.27 *************** *** 187,193 **** verbilligteSonderfertigkeiten_->Clear(); ! DSA::Sonderfertigkeiten::iterator sf; for (sf = objekt_->sonderfertigkeiten_.begin(); sf != objekt_->sonderfertigkeiten_.end(); ++sf) ! sonderfertigkeiten_->Append(sf->second.Text().c_str()); for (int sfi = 0; sfi != objekt_->verbilligteSonderfertigkeiten_.size(); ++sfi) verbilligteSonderfertigkeiten_-> Append(objekt_->verbilligteSonderfertigkeiten_[sfi].c_str()); --- 187,193 ---- verbilligteSonderfertigkeiten_->Clear(); ! DSA::SonderfertigkeitenAuswahl::iterator sf; for (sf = objekt_->sonderfertigkeiten_.begin(); sf != objekt_->sonderfertigkeiten_.end(); ++sf) ! sonderfertigkeiten_->Append(sf->Text().c_str()); for (int sfi = 0; sfi != objekt_->verbilligteSonderfertigkeiten_.size(); ++sfi) verbilligteSonderfertigkeiten_-> Append(objekt_->verbilligteSonderfertigkeiten_[sfi].c_str()); *************** *** 1003,1008 **** punkte += DSA::charakteristika()->Hole(c->ID(0)).GP() * 3; // TODO Konstante ! for (DSA::Sonderfertigkeiten::iterator sf = objekt_->sonderfertigkeiten_.begin(); sf != objekt_->sonderfertigkeiten_.end(); ++sf) ! punkte += (DSA::sonderfertigkeiten()->Hole(sf->first).AP()+5) / 10; // TODO Konstante for (StringListe::iterator vsf = objekt_->verbilligteSonderfertigkeiten_.begin(); vsf != objekt_->verbilligteSonderfertigkeiten_.end(); ++vsf) --- 1003,1008 ---- punkte += DSA::charakteristika()->Hole(c->ID(0)).GP() * 3; // TODO Konstante ! for (DSA::SonderfertigkeitenAuswahl::iterator sf = objekt_->sonderfertigkeiten_.begin(); sf != objekt_->sonderfertigkeiten_.end(); ++sf) ! punkte += (DSA::sonderfertigkeiten()->Hole(sf->ID(0)).AP()+5) / 10; // TODO Konstante for (StringListe::iterator vsf = objekt_->verbilligteSonderfertigkeiten_.begin(); vsf != objekt_->verbilligteSonderfertigkeiten_.end(); ++vsf) *************** *** 1725,1734 **** //@+node:<< SFWeg >> void SFWeg (const std::string& s) { ! std::string auswahl; ! for (DSA::Sonderfertigkeiten::iterator i = objekt_->sonderfertigkeiten_.begin(); i != objekt_->sonderfertigkeiten_.end(); ++i) ! if (i->second.Text() == s) ! auswahl = i->first; ! objekt_->sonderfertigkeiten_.Loesche(auswahl); Update(); } // SFWeg --- 1725,1734 ---- //@+node:<< SFWeg >> void SFWeg (const std::string& s) { ! DSA::SonderfertigkeitenAuswahl::iterator auswahl; ! for (DSA::SonderfertigkeitenAuswahl::iterator i = objekt_->sonderfertigkeiten_.begin(); i != objekt_->sonderfertigkeiten_.end(); ++i) ! if (i->Text() == s) ! auswahl = i; ! objekt_->sonderfertigkeiten_.Loesche(*auswahl); Update(); } // SFWeg *************** *** 1742,1754 **** if (sfdef==0) sfdef = DSA::generierteSonderfertigkeiten()->Zeige(sfs); ! if (sfdef==0) return; ! DSA::Sonderfertigkeit sf(*sfdef); std::string s = _t("Diese Sonderfertigkeit braucht eine Spezifizierung.\nSoll diese vorgegeben sein, geben Sie sie bitte jetzt ein.\nSoll der Spieler selbst wählen, lassen Sie das Feld frei."); if (sfdef->BrauchtSpezifizierung()) ! sf.Spezifizierung(DSA::hole()->Text(s)); ! if (strings::BeginntMit(sf.ID(), _t("Ritualkenntnis"))) ! sf.Stufe(3); // TODO Magische Konstante ! objekt_->sonderfertigkeiten_.FuegeEin(sf); Update(); } // SFHinzu --- 1742,1755 ---- if (sfdef==0) sfdef = DSA::generierteSonderfertigkeiten()->Zeige(sfs); ! if (sfdef==0) return; ! DSA::Auswahl<DSA::Sonderfertigkeit> a; ! a.IDHinzu(sfdef->ID()); std::string s = _t("Diese Sonderfertigkeit braucht eine Spezifizierung.\nSoll diese vorgegeben sein, geben Sie sie bitte jetzt ein.\nSoll der Spieler selbst wählen, lassen Sie das Feld frei."); if (sfdef->BrauchtSpezifizierung()) ! a.Kommentar(DSA::hole()->Text(s)); ! if (strings::BeginntMit(sfdef->ID(), _t("Ritualkenntnis"))) ! a.WertHinzu(3); // TODO Magische Konstante ! objekt_->sonderfertigkeiten_.FuegeEin(a); Update(); } // SFHinzu *************** *** 1816,1823 **** std::string s = sonderfertigkeiten_->GetStringSelection().c_str(); ! for (DSA::Sonderfertigkeiten::iterator i = objekt_->sonderfertigkeiten_.begin(); i != objekt_->sonderfertigkeiten_.end(); ++i) ! if (strings::BeginntMit(s, i->first)) { ! i->second.Stufe(i->second.Stufe()+1); ! sonderfertigkeiten_->SetString(sel, i->second.Text().c_str()); } } // OnSFPlus --- 1817,1826 ---- std::string s = sonderfertigkeiten_->GetStringSelection().c_str(); ! for (DSA::SonderfertigkeitenAuswahl::iterator i = objekt_->sonderfertigkeiten_.begin(); i != objekt_->sonderfertigkeiten_.end(); ++i) ! if (strings::BeginntMit(s, i->ID(0))) { ! int w = i->HoleWert(0); ! i->EntferneLetztenWert(); ! i->WertHinzu(w+1); ! sonderfertigkeiten_->SetString(sel, i->Text().c_str()); } } // OnSFPlus *************** *** 1832,1844 **** std::string s = sonderfertigkeiten_->GetStringSelection().c_str(); ! ! for (DSA::Sonderfertigkeiten::iterator i = objekt_->sonderfertigkeiten_.begin(); i != objekt_->sonderfertigkeiten_.end(); ++i) ! if (strings::BeginntMit(s, i->first)) ! if (i->second.Stufe()==3) // TODO Magische Konstante Startwert Ritualkenntnisse text_->AppendText(_t("Dies ist bereits der Minimalwert.").c_str()); else { ! i->second.Stufe(i->second.Stufe()-1); ! sonderfertigkeiten_->SetString(sel, i->second.Text().c_str()); ! } } // OnSFMinus --- 1835,1850 ---- std::string s = sonderfertigkeiten_->GetStringSelection().c_str(); ! ! for (DSA::SonderfertigkeitenAuswahl::iterator i = objekt_->sonderfertigkeiten_.begin(); i != objekt_->sonderfertigkeiten_.end(); ++i) ! if (strings::BeginntMit(s, i->ID(0))) { ! int w = i->HoleWert(0); ! if (w==3) // TODO Magische Konstante Startwert Ritualkenntnisse text_->AppendText(_t("Dies ist bereits der Minimalwert.").c_str()); else { ! i->EntferneLetztenWert(); ! i->WertHinzu(w-1); ! sonderfertigkeiten_->SetString(sel, i->Text().c_str()); ! } ! } } // OnSFMinus *************** *** 1945,1948 **** --- 1951,1957 ---- //@+node:<< Version History >> // $Log$ + // Revision 1.27 2004/01/05 03:35:33 vrandezo + // SF bei RKP-Defs sind jetzt auch Auswahlmengen statt einfacher Mengen + // // Revision 1.26 2004/01/05 02:45:14 vrandezo // Charakteristika bei RPK-Definition von Mengen auf Auswahlmengen umgestellt Index: PersonGUIPersonenKomponentewx.cpp =================================================================== RCS file: /cvsroot/darkeyetool/det/src/gui/PersonGUIPersonenKomponentewx.cpp,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** PersonGUIPersonenKomponentewx.cpp 5 Jan 2004 02:45:14 -0000 1.13 --- PersonGUIPersonenKomponentewx.cpp 5 Jan 2004 03:35:33 -0000 1.14 *************** *** 266,271 **** void NormalisiereChar(const DSA::AuswahlMenge<T>& quelle, U& ziel, wxWindow* parent) { for (typename DSA::AuswahlMenge<T>::const_iterator i = quelle.begin(); i != quelle.end(); ++i) { ! if (i->Art() == _t("einfach")) GebeEinChar(T(), i->ID(0), i->HoleWert(0), ziel, parent, i->Kommentar()); // if (i->Art() == _t("Liste")) { --- 266,273 ---- void NormalisiereChar(const DSA::AuswahlMenge<T>& quelle, U& ziel, wxWindow* parent) { for (typename DSA::AuswahlMenge<T>::const_iterator i = quelle.begin(); i != quelle.end(); ++i) { ! if (i->Art() == _t("einfach")) { GebeEinChar(T(), i->ID(0), i->HoleWert(0), ziel, parent, i->Kommentar()); + Log::Add(i->HoleWert(0)); + } // if (i->Art() == _t("Liste")) { *************** *** 322,326 **** c->second.Spezifizierung(DSA::hole()->Text(s)); } ! p->sonderfertigkeiten_ = personenKomponenteDef_->sonderfertigkeiten_; for (DSA::Sonderfertigkeiten::iterator sf = p->sonderfertigkeiten_.begin(); sf != p->sonderfertigkeiten_.end(); ++sf) if ((sf->second.Definition()->BrauchtSpezifizierung()) && (sf->second.Spezifizierung()=="")) { --- 324,328 ---- c->second.Spezifizierung(DSA::hole()->Text(s)); } ! NormalisiereChar(personenKomponenteDef_->sonderfertigkeiten_, p->sonderfertigkeiten_, this); for (DSA::Sonderfertigkeiten::iterator sf = p->sonderfertigkeiten_.begin(); sf != p->sonderfertigkeiten_.end(); ++sf) if ((sf->second.Definition()->BrauchtSpezifizierung()) && (sf->second.Spezifizierung()=="")) { *************** *** 344,347 **** --- 346,352 ---- // $Log$ + // Revision 1.14 2004/01/05 03:35:33 vrandezo + // SF bei RKP-Defs sind jetzt auch Auswahlmengen statt einfacher Mengen + // // Revision 1.13 2004/01/05 02:45:14 vrandezo // Charakteristika bei RPK-Definition von Mengen auf Auswahlmengen umgestellt |