43 #include "../../Landscape/ls.h"
44 #include "../../Landscape/cropprogs/PLFodderLucerne1.h"
84 if (a_ev->
m_startday > g_date->DayInYear(1, 7)) {
85 if (g_date->DayInYear(10, 8) >= a_ev->
m_startday)
87 g_msg->Warn(WARN_BUG,
"PLFodderLucerne1::Do(): ",
"Harvest too late for the next crop to start!!!");
89 g_msg->Warn(
"Next Crop ", (
double)almassnum);
96 d1 = g_date->OldDays() + g_date->DayInYear(1, 7);
97 if (g_date->Date() < d1) {
99 printf(
"Poly: %d\n", a_field->GetPoly());
100 g_msg->Warn(WARN_BUG,
"PLFodderLucerne1::Do(): ",
"Crop start attempt between 1st Jan & 1st July");
102 g_msg->Warn(WARN_BUG,
"Previous Crop ", prev);
104 g_msg->Warn(
"Next Crop ", (
double)almassnum);
108 if (g_date->Date() > d1) {
110 g_msg->Warn(WARN_BUG,
"PLFodderLucerne1::Do(): ",
"Crop start attempt after last possible start date");
111 g_msg->Warn(WARN_BUG,
"Previous Crop ",
"");
112 a_field->GetOwner()->GetPreviousCrop(a_field->GetRotIndex());
114 g_msg->Warn(
"Next Crop ", (
double)almassnum);
122 d1 = g_date->OldDays() + g_date->DayInYear(1, 3);
123 if (g_date->Date() >= d1) d1 += 365;
132 d1 = g_date->OldDays() + g_date->DayInYear(20, 7);
143 if (!a_farm->
HerbicideTreat(a_field, 0.0, g_date->DayInYear(31, 10) - g_date->DayInYear())) {
157 if (a_ev->
m_lock || a_farm->DoIt(32))
159 if (!a_farm->FP_Slurry(a_field, 0.0, g_date->DayInYear(5, 11) - g_date->DayInYear())) {
176 if (a_ev->
m_lock || a_farm->DoIt(32))
178 if (!a_farm->FA_Slurry(a_field, 0.0, g_date->DayInYear(5, 11) - g_date->DayInYear())) {
193 if (a_ev->
m_lock || a_farm->DoIt(60))
195 if (!a_farm->StubblePlough(a_field, 0.0, g_date->DayInYear(5, 11) - g_date->DayInYear())) {
211 if (!a_farm->AutumnHarrow(a_field, 0.0, g_date->DayInYear(5, 11) - g_date->DayInYear())) {
218 if (a_ev->
m_lock || a_farm->DoIt(40))
220 if (!a_farm->AutumnHarrow(a_field, 0.0, g_date->Date() + 7 - g_date->DayInYear())) {
225 d1 = g_date->Date() + 1;
226 if (d1 < g_date->OldDays() + g_date->DayInYear(10, 9)) {
227 d1 = g_date->OldDays() + g_date->DayInYear(10, 9);
229 if (a_farm->IsStockFarmer())
236 if (!a_farm->StubbleHarrowing(a_field, 0.0, g_date->DayInYear(10, 11) - g_date->DayInYear())) {
240 d1 = g_date->Date() + 1;
241 if (d1 < g_date->OldDays() + g_date->DayInYear(10, 9)) {
242 d1 = g_date->OldDays() + g_date->DayInYear(10, 9);
244 if (a_farm->IsStockFarmer())
255 if (!a_farm->FP_Slurry(a_field, 0.0, g_date->DayInYear(15, 11) - g_date->DayInYear())) {
267 if (!a_farm->FA_Slurry(a_field, 0.0, g_date->DayInYear(15, 11) - g_date->DayInYear())) {
275 if (a_ev->
m_lock || a_farm->DoIt(41))
277 if (!a_farm->FP_NPK(a_field, 0.0, g_date->DayInYear(15, 11) - g_date->DayInYear())) {
285 if (a_ev->
m_lock || a_farm->DoIt(41))
287 if (!a_farm->FA_NPK(a_field, 0.0, g_date->DayInYear(15, 11) - g_date->DayInYear())) {
296 if (a_ev->
m_lock || a_farm->DoIt(88))
298 if (!a_farm->WinterPlough(a_field, 0.0, g_date->DayInYear(15, 11) - g_date->DayInYear())) {
315 if (!a_farm->StubbleCultivatorHeavy(a_field, 0.0, g_date->DayInYear(15, 11) - g_date->DayInYear())) {
322 if ((a_ev->
m_lock) || a_farm->DoIt(90))
324 if (!a_farm->SpringHarrow(a_field, 0.0, g_date->DayInYear(31, 3) - g_date->DayInYear())) {
329 d1 = g_date->Date() + 1;
330 if (d1 < g_date->OldDays() + g_date->DayInYear(5, 3)) {
331 d1 = g_date->OldDays() + g_date->DayInYear(5, 3);
333 if (a_farm->IsStockFarmer())
340 if (a_ev->
m_lock || a_farm->DoIt(78))
342 if (!a_farm->FP_PK(a_field, 0.0, g_date->DayInYear(20, 4) - g_date->DayInYear())) {
351 if (a_ev->
m_lock || a_farm->DoIt(78))
353 if (!a_farm->FA_PK(a_field, 0.0, g_date->DayInYear(20, 4) - g_date->DayInYear())) {
364 if (!a_farm->HeavyCultivatorAggregate(a_field, 0.0, g_date->DayInYear(20, 4) - g_date->DayInYear())) {
369 d1 = g_date->Date() + 3;
370 if (d1 < g_date->OldDays() + g_date->DayInYear(1, 4)) {
371 d1 = g_date->OldDays() + g_date->DayInYear(1, 4);
377 if (a_ev->
m_lock || a_farm->DoIt(15))
379 if (!a_farm->HerbicideTreat(a_field, 0.0, g_date->DayInYear(30, 4) - g_date->DayInYear())) {
386 d1 = g_date->Date() + 3;
387 if (d1 < g_date->OldDays() + g_date->DayInYear(20, 4)) {
388 d1 = g_date->OldDays() + g_date->DayInYear(20, 4);
393 if (a_ev->
m_lock || a_farm->DoIt(98))
395 if (!a_farm->PreseedingCultivator(a_field, 0.0, g_date->DayInYear(4, 5) - g_date->DayInYear())) {
403 if (!a_farm->SpringSow(a_field, 0.0, g_date->DayInYear(5, 5) - g_date->DayInYear())) {
414 if (a_field->GetGreenBiomass() <= 0)
419 if (!a_farm->HerbicideTreat(a_field, 0.0, g_date->DayInYear(20, 5) - g_date->DayInYear())) {
432 if (a_ev->
m_lock || a_farm->DoIt(49))
434 if (a_field->GetGreenBiomass() <= 0) {
439 if (!a_farm->HerbicideTreat(a_field, 0.0, g_date->DayInYear(15, 7) - g_date->DayInYear())) {
455 if (!a_farm->CutToSilage(a_field, 0.0, g_date->DayInYear(10, 6) - g_date->DayInYear())) {
468 if (a_ev->
m_lock || a_farm->DoIt(73))
470 if (!a_farm->CutToSilage(a_field, 0.0, g_date->DayInYear(10, 8) - g_date->DayInYear())) {
481 g_msg->Warn(WARN_BUG,
"PLFodderLucerne1::Do(): "
482 "Unknown event type! ",
"");