28 #include "../../Landscape/ls.h"
29 #include "../../Landscape/cropprogs/FieldPeasSilage.h"
61 m_field->SetMDates(0,0,g_date->DayInYear(30,8));
63 m_field->SetMDates(1,0,g_date->DayInYear(30,8));
80 g_msg->Warn( WARN_FILE,
"FieldPeas::Do(): Harvest too late for the next crop to start!!! The next crop is: ", veg_type );
85 for (
int i=0; i<noDates; i++) {
103 d1 = g_date->OldDays() + g_date->DayInYear( 1,7 );
104 if (g_date->Date() < d1)
107 g_msg->Warn( WARN_BUG,
"FieldPeasSilage::Do(): "
108 "Crop start attempt between 1st Jan & 1st July",
"" );
114 if (g_date->Date() > d1)
117 g_msg->Warn( WARN_BUG,
"FieldPeasSilage::Do(): Crop start attempt after last possible start date",
"" );
126 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,3 ),
135 d1 = g_date->OldDays() + g_date->DayInYear( 1,10 );
136 if ( g_date->Date() > d1 ) {
147 g_date->DayInYear( 1, 12 ) -
148 g_date->DayInYear())) {
153 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,3 ) + 365,
160 g_date->DayInYear( 1,4 ) -
161 g_date->DayInYear())) {
167 int d1 = g_date->Date()+1;
168 int d2 = g_date->OldDays() + g_date->DayInYear( 5,3 );
178 g_date->DayInYear( 5,4 ) - g_date->DayInYear())) {
188 int d1 = g_date->Date();
189 int d2 = g_date->OldDays() + g_date->DayInYear( 20,3 );
199 g_date->DayInYear( 15,4 ) -
200 g_date->DayInYear())) {
205 int d1 = g_date->Date();
206 int d2 = g_date->OldDays() + g_date->DayInYear( 25,3 );
217 g_date->DayInYear( 15,4 ) -
218 g_date->DayInYear())) {
224 int d1 = g_date->Date();
225 int d2 = g_date->OldDays() + g_date->DayInYear( 25,3 );
235 g_date->DayInYear( 15,4 ) -
236 g_date->DayInYear())) {
245 g_date->DayInYear( 15,4 ) -
246 g_date->DayInYear())) {
250 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 15,4 ),
260 Field * pf = dynamic_cast<Field*>(
m_field);
261 pf->Add_missed_herb_app();
262 if(
m_farm->
DoIt(95)) pf->Add_missed_herb_app();
273 int d1 = g_date->OldDays() + g_date->DayInYear( 25,4 );
274 if ( d1 < g_date->Date() + 7 ) {
275 d1 = g_date->Date() + 7;
284 g_date->DayInYear( 10,5 ) -
285 g_date->DayInYear())) {
290 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,6 ),
292 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,6 ),
296 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,6 ),
306 Field * pf = dynamic_cast<Field*>(
m_field);
307 pf->Add_missed_fi_app();
313 int d1 = g_date->Date();
335 Field * pf = dynamic_cast<Field*>(
m_field);
336 pf->Add_missed_fi_app();
341 int d1 = g_date->Date();
349 g_date->DayInYear( 15,6 ) -
350 g_date->DayInYear())) {
363 int d1 = g_date->Date();
372 g_date->DayInYear( 15,6 ) - g_date->DayInYear())) {
379 int d1 = g_date->OldDays() + g_date->DayInYear( 16,6 );
380 if ( d1 < g_date->Date() + 7 ) {
381 d1 = g_date->Date() + 7;
386 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,8 ),
392 int d1 = g_date->Date();
401 g_date->DayInYear( 1,7 ) -
402 g_date->DayInYear())) {
414 g_date->DayInYear( 20,8 ) -
415 g_date->DayInYear())) {
434 g_date->DayInYear( 30,8 ) -
435 g_date->DayInYear())) {
443 if (
m_field->GetMConstants(0)==0) {
445 g_msg->Warn( WARN_BUG,
"FieldPeas::Do(): failure in 'StrawChopping' execution",
"" );
460 g_msg->Warn( WARN_BUG,
"FieldPeas::Do(): "
461 "Unknown event type! ",
"" );