]> git.llucax.com Git - z.facultad/75.29/susanita.git/blobdiff - src/persona.cpp
Bugfix.
[z.facultad/75.29/susanita.git] / src / persona.cpp
index ca121a4a32c05c01f536a787ed080d4bb349de29..e35f0421eca2c879ffc1243601681e508601e340 100644 (file)
@@ -123,7 +123,7 @@ comprometer_con(Persona& p)
                assert(pareja != 0);
                pareja->estado = SOLTERO;
                pareja->pareja = 0;
-               pareja->rechazos.push_back(&p);
+               pareja->rechazos.push_back(this);
        }
 
        // nos comprometemos
@@ -136,8 +136,36 @@ comprometer_con(Persona& p)
        for (ofertas_type::iterator pretendiente = ofertas.begin();
                        pretendiente != ofertas.end(); ++pretendiente)
        {
-               (*pretendiente)->rechazos.push_back(&p);
+               (*pretendiente)->rechazos.push_back(this);
        }
        ofertas.clear();
 }
 
+// Nos comprometemos con la otra persona y a ella la comprometemos con nosotros
+void
+Persona::
+comprometer_con_bt(Persona& p)
+{
+       // nos comprometemos
+       estado = COMPROMETIDO;
+       pareja = &p;
+       p.estado = COMPROMETIDO;
+       p.pareja = this;
+}
+
+// Rompemos el compromiso existente
+void
+Persona::
+romper_compromiso(Persona& p)
+{
+       assert(pareja == &p);
+       assert(p.pareja == this);
+       
+       // rompemos el compromiso
+       estado = SOLTERO;
+       pareja = 0;
+       p.estado = SOLTERO;
+       p.pareja = 0;
+}
+
+