Humidifier compiling error

This is NOT my code; was posted on Project Hub. I tried to use the code (humidity controller) but it returns an error on line 270:
Error: expected primary-expression before '.' token
The OP is not responding to comments and I'm no expert. Would appreciate if someone could help debug the code; Thanks!

//HUMIDITY CONTROLLER 1.1
//written for NANO

//controls and displays relative humidity
//sesnor used is DHT11
//uses active-low relay module to control live lines for 2 standard electrical outlets
//uses i2c lcd to display humidity and humidity setting
//turns display off during inactivity
//setting is adjustable from 10%-90% using 2 buttons
//backlight of LCD is controlled by pin 4, connected to top LED jumper pin on i2c backpack
//serial communications to monitor to ensure all code is working.

//added: "system off" function - allows both outlets to be turned off

// █ G █ L █ O █ B █ A █ L █ S █
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <DHT.h>

// set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x3F, 16, 2);

DHT DHT_sens(10, DHT22); 

#define DHT22_PIN A2

//buttons and variables to adjust calibration
int calupbtn = A0;
int calup;
int caldownbtn = A1;
int caldown;

//i2c PINS A4, A5

//pin for turning on humidifier relay
int humidifier = 3;
//pin for turning on the fan relay
int fan = 2;
//pin for turning on LCD backlights
int lcdlight = 4;

//calibration variable
int setpoint = 50;  //feedback setpoint.
bool calstate = false;  //enables calibration adjustments only when LCD is ON.

//backlight timing variables
int displtime = 12000;  //amount of time the display is to be on before turning off
unsigned long displtimeon;  //last recorded time display timer was reset
int calunlock = 0;   //loop counter for unlocking calibration

//sensor timing variables
unsigned long lastcheck;  //last time DHT was read
long interval = 30000;      //time between DHT readings

//system variables
bool syson = true;    //reference for system on/off.
byte systog = 2;       //even number toggles on, odds toggle off
int syslock = 0;     //loop counter for unlocking system toggle

// █ S █ E █ T █ U █ P █
void setup() {

  Serial.begin(9600);  //serial communication used to ensure code is working correctly.

  lcd.init();  //initialize LCD
  lcd.backlight(); //enable LCD backlight, but doesn't turn it on

  lastcheck = 0;
  digitalWrite(lcdlight, HIGH);
  Serial.println("STARTING");
  lcd.print("   STARTING");

  //pin assignments
  pinMode(calupbtn, INPUT);
  pinMode(caldownbtn, INPUT);
  pinMode(humidifier, OUTPUT);
  pinMode(fan, OUTPUT);
  pinMode(lcdlight, OUTPUT);
  delay(1000);


  //test fan
  lcd.setCursor(0, 1);
  lcd.print("<FAN>     HMDFR  ");
  digitalWrite(fan, LOW);
  digitalWrite(humidifier, HIGH);
  delay(6000);
  //test humidifier
  lcd.setCursor(0, 1);
  lcd.print(" FAN     <HMDFR> ");
  digitalWrite(fan, HIGH);
  digitalWrite(humidifier, LOW);
  delay(6000);
  //stop startup test
  digitalWrite(humidifier, HIGH);
  digitalWrite(fan, HIGH);
  lcd.clear();

  displtimeon = millis();

  int chk = DHT.read11(DHT11_PIN);
  lastcheck = millis();

  lcd.setCursor(0, 0);
  lcd.print("Humidity: ");
  lcd.setCursor(13, 0);
  lcd.print(DHT.humidity);
  lcd.setCursor(15, 0);
  lcd.print("%  ");
  lcd.setCursor(0, 1);
  lcd.print("setting: ");
  lcd.setCursor(13, 1);
  lcd.print(setpoint);
  lcd.setCursor(15, 1);
  lcd.print("%  ");
  delay(100);
}

// █ L █ O █ O █ P █
void loop() {

  //check calibration buttons
  calup = digitalRead(calupbtn);
  caldown = digitalRead(caldownbtn);

  if (calup == HIGH and caldown == HIGH) { //--------SYSTEM TOGGLE
    syslock ++;
    Serial.println(syslock);
    if (syslock == 20) { //if both buttons held down for this many loops
      systog++;
      if (systog % 2 == 1) { //--------SYSTEM OFF
        syson = false;
        digitalWrite(fan, HIGH);
        digitalWrite(humidifier, HIGH);
        digitalWrite(lcdlight, HIGH);
        Serial.println("SYSTEM TURNED OFF");
        lcd.clear();
        lcd.print("   SYSTEM OFF");
        lcd.setCursor(0, 1);
        lcd.print("  hold both btns");
        delay(2000);
        lcd.setCursor(0, 1);
        lcd.print("  to turn on    ");
        displtimeon = millis();
      }
      if (systog % 2 == 0) { //--------SYSTEM ON
        syson = true;
        Serial.println("SYSTEM TURNED ON");
        digitalWrite(lcdlight, HIGH);
        lcd.clear();
        lcd.print("   SYSTEM ON");
        delay(2000);
        lcd.clear();
        displtimeon = millis();
      }
      syslock = 0;
    }
  }
  else(syslock = 0);

  //read humidity at appropriate intervals
  if (millis() > lastcheck + interval and syson == true) { //read the DHT humidity
    int chk = DHT.read11(DHT11_PIN);
    lastcheck = millis();
    Serial.print("DHT read = ");
    Serial.print(DHT.humidity);
    Serial.print("%");
    Serial.println(" ");
  }

  //turn on the led lights when calibration buttons are pressed
  if (calup == HIGH xor caldown == HIGH) {
    digitalWrite(lcdlight, HIGH);
    calstate = true;
    displtimeon = millis();  //set display timer
    Serial.println("cal btn ACTIVE");
    if (syson == false) {
      digitalWrite(lcdlight, HIGH);
      lcd.clear();
      lcd.print("   SYSTEM OFF");
      lcd.setCursor(0, 1);
      lcd.print("  hold both btns");
      delay(3000);
      lcd.setCursor(0, 1);
      lcd.print("  to turn on    ");
      displtimeon = millis();
    }
  }

  if (calstate == true and syson == true) { //--------DISPLAY ROUTINE
    Serial.println("printing display");
    //display variables on LCD
    lcd.setCursor(0, 0);
    lcd.print("Humidity: ");
    lcd.setCursor(13, 0);
    lcd.print(DHT.humidity);
    lcd.setCursor(15, 0);
    lcd.print("%  ");
    lcd.setCursor(0, 1);
    lcd.print("setting: ");
    lcd.setCursor(13, 1);
    lcd.print(setpoint);
    lcd.setCursor(15, 1);
    lcd.print("%  ");
    delay(100);

    calunlock ++;
    //keeps calibration locked until display cycles 5 times after initially turned on
    //prevents adjustments on initial button press.
  }

  //--------CALIBRATION ADJUSTMENTS
  if (calup == HIGH and caldown == LOW and calstate == true and syson == true) {
    if (setpoint < 90 and calunlock > 5) {
      setpoint = setpoint + 5;  //increase setpoint
      Serial.println("adj setpoint up");
    }
    Serial.println(setpoint);
    delay(100);
    displtimeon = millis();     //reset backlight timeout
  }

  if (caldown == HIGH and calup == LOW and calstate == true and syson == true) {
    if (setpoint > 10 and calunlock > 5) {
      setpoint = setpoint - 5;  //decrease setpoint
      Serial.println("adj setpoint dn");
    }
    Serial.println(setpoint);
    delay(100);
    displtimeon = millis();     //reset backlight timeout
  }

  if (millis() > displtimeon + displtime) { //-----------------BACKLIGHT TIMEOUT
    digitalWrite(lcdlight, LOW); //turn off the screen
    calstate = false;
    Serial.println("displ + backlights off");
    lcd.clear();
    calunlock = 0;  //lock calibration
  }

  if (millis() < lastcheck) {
    lastcheck = millis();  //reset timers in a millisecond rollover
  }

  //--------SETPOINT ERROR PROCEDURE
  if (setpoint > 91 or setpoint < 9) { //in case setpoint is ever out of bounds
    Serial.println("O/B ERROR");
    digitalWrite(lcdlight, HIGH);
    lcd.clear();
    lcd.print("O/B ERROR");  //display error message on lcd
    lcd.setCursor(0, 1);
    lcd.print("RESETTING");
    delay(1000);
    for (int count = 9; count >= 0; count = count - 1) {
      lcd.setCursor(15, 1);
      lcd.print(count);     //count down from 10
      delay(1000);
    }
    setpoint = 50;        //reset setpoint at 50.
    displtimeon = millis();
  }

  //turn on humidifier relay if below setpoint  --------RELAY CONTROL
  //RELAY MODULE IS ACTIVE LOW
  if (DHT.humidity <= setpoint - 3 and syson == true) { //if humidity is 3% lower than setpoint
    Serial.println("humidifier ON, fan OFF");
    digitalWrite(humidifier, LOW);  //turn on humidifier
    digitalWrite(fan, HIGH);
  }
  else if (DHT.humidity >= setpoint + 3 and syson == true) { //if humidity is 3% above setpoint
    Serial.println("humidifier OFF, fan ON");
    digitalWrite(humidifier, HIGH);  //turn on fan
    digitalWrite(fan, LOW);
  }
  else {
    Serial.println("all off");  //if humidity is within 3% of setpoint
    digitalWrite(humidifier, HIGH);  //turn both off
    digitalWrite(fan, HIGH);
  }
  //delay(700);  //un-comment for serial debugging

  Serial.print("setpoint = ");
  Serial.println(setpoint);

  //delay(700);  //un-comment for serial debugging
}

Please use code tags and attache the complete error report.

Sorry but I can't post the complete error report because it exceeds the max. character count allowed.

Okey. Attache the first 20 lines and the last 20 lines.

I see, it shows "multiple libraries...", not sure how to fix that

Compiling sketch...
"C:\\Users\\...\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino5/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10810 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR "-IC:\\Users\\...\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.2\\cores\\arduino" "-IC:\\Users\\...\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.2\\variants\\eightanaloginputs" "-IC:\\Users\\...\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.2\\libraries\\Wire\\src" "-IC:\\Users\\...\\Documents\\Arduino\\libraries\\LiquidCrystal_I2C" "-IC:\\Users\\...\\Documents\\Arduino\\libraries\\DHT_sensor_library" "-IC:\\Users\\...\\Documents\\Arduino\\libraries\\Adafruit_Unified_Sensor" "C:\\Users\\...\\AppData\\Local\\Temp\\arduino_build_161486\\sketch\\sketch_jan23b.ino.cpp" -o "C:\\Users\\...\\AppData\\Local\\Temp\\arduino_build_161486\\sketch\\sketch_jan23b.ino.cpp.o"
C:\Users\...\Documents\Arduino\sketch_jan23b\sketch_jan23b.ino: In function 'void setup()':

sketch_jan23b:101:16: error: expected primary-expression before '.' token

   int chk = DHT.read11(DHT22_PIN);

                ^

sketch_jan23b:107:16: error: expected primary-expression before '.' token

   lcd.print(DHT.humidity);

                ^

C:\Users\...\Documents\Arduino\sketch_jan23b\sketch_jan23b.ino: In function 'void loop()':

sketch_jan23b:163:18: error: expected primary-expression before '.' token

     int chk = DHT.read11(DHT22_PIN);

                  ^

sketch_jan23b:166:21: error: expected primary-expression before '.' token

     Serial.print(DHT.humidity);

                     ^

sketch_jan23b:196:18: error: expected primary-expression before '.' token

     lcd.print(DHT.humidity);

                  ^

sketch_jan23b:265:10: error: expected primary-expression before '.' token

   if (DHT.humidity <= setpoint - 3 and syson == true) { //if humidity is 3% lower than setpoint

          ^

sketch_jan23b:270:15: error: expected primary-expression before '.' token

   else if (DHT.humidity >= setpoint + 3 and syson == true) { //if humidity is 3% above setpoint

               ^

Multiple libraries were found for "Wire.h"
 Used: C:\Users\...\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.2\libraries\Wire
 Not used: C:\Users\...\Documents\Arduino\libraries\Wire
Multiple libraries were found for "LiquidCrystal_I2C.h"
 Used: C:\Users\...\Documents\Arduino\libraries\LiquidCrystal_I2C
Multiple libraries were found for "DHT.h"
 Used: C:\Users\...\Documents\Arduino\libraries\DHT_sensor_library
Multiple libraries were found for "Adafruit_Sensor.h"
 Used: C:\Users\...\Documents\Arduino\libraries\Adafruit_Unified_Sensor
Using library Wire at version 1.0 in folder: C:\Users\...\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.2\libraries\Wire 
Using library LiquidCrystal_I2C at version 1.1.4 in folder: C:\Users\...\Documents\Arduino\libraries\LiquidCrystal_I2C 
Using library DHT_sensor_library at version 1.3.7 in folder: C:\Users\...\Documents\Arduino\libraries\DHT_sensor_library 
Using library Adafruit_Unified_Sensor at version 1.1.1 in folder: C:\Users\...\Documents\Arduino\libraries\Adafruit_Unified_Sensor 
exit status 1
expected primary-expression before '.' token

The first I see is that the initiation of DHT has gone wrong.
I'm ignorant regarding C##, only ran C. But…. Look at this line of code: DHT DHT_sens(10, DHT22);
Could it be that You should use DHT_sens.humidity, DHT_sens.read etc.?

Hopefully C## guys will pop in faster than lightning now.

Make a try on one line of code and see if it helps.

Check Your Arduino library folder regarding I2C and DHT libraries. Do You have more then one of them?

Railroader:
Check Your Arduino library folder regarding I2C and DHT libraries. Do You have more then one of them?

No, I have just one so I'm confused. I removed all other libraries than those 2 and now it says can't compile for Nano; which library should I move back?

Have you tried using the example from the dht library? If you haven't, get that working first, it's like hello world or blink for the dht sensor. It will also help get constructors right, initialising working properly and syntax for reading the sensor correct, - compare the example to the code you have downloaded. Remember or notice too from the example that floats are returned- and that has an impact on printing decimal places also.

If the lib example works ok, save as a new file, comment out anything you don't need and start entering small snippets of code from the project of interest and re-verify. Eventually, you should find a line of code that won't compile for one reason or another, and you can focus on getting that bit right, and then so on.

edit, I was concerned about the syntax for boolean operators, but it appears they compile ok, at least.

The "Multiple libraries found for" message has nothing to do with your problem. That's just some helpful information the Arduino IDE provides. Generally, you can safely ignore the "Multiple libraries found for" messages. The only time you need to pay attention to it is when the Arduino IDE picked a different library than the one you had intended.

Note that there is a bug in Arduino IDE 1.8.10 that causes it to display "Multiple libraries found for" messages even when there were no multiple libraries. You'll know the legitimate "Multiple libraries found for" messages because they'll show the path to a library that was not used. The false "Multiple libraries found for" messages only show the path to the library that was used.

There is one legitimate "Multiple libraries found for" message, and it is problematic:

kwhunter:

Multiple libraries were found for "Wire.h"

Used: C:\Users...\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.2\libraries\Wire
Not used: C:\Users...\Documents\Arduino\libraries\Wire

Because the Wire library is architecture-specific, each hardware package comes with its own version of the Wire library, which is used only by the boards of that package. Installing the Wire library separate from the hardware package, as you have done, risks that the IDE will chose to use the library with a board of an architecture it wasn't written for. The only valid reason to install the Wire library separately is if you were making custom modifications to it. If that's not the case, then I recommend you to delete C:\Users...\Documents\Arduino\libraries\Wire to avoid possible problems it could cause in the future.

@kwhunter, how is this project going?