Pressure sensor matrix programming problem

Hi!
I am connecting a 3x3 DIY pressure sensor matrix to an Arduino Uno. When you press individual points, the arduino reads the values properly indicating that it is pressed. However, when you press two points on the same row the value does not get read properly (the values don't represent that it is pressed like the pressing of the single point). This sketch is modified from PlugAndWear.com is for sale | HugeDomains. It seems like a programming issue but don't know what is wrong or how to fix the problem. Can anyone help?

The circuit:
Arduino digital outputs attached to 3 rows of sensor.
Arduino analog inputs attached to 3 columns of sensor with 10k pull down resistors.

Sensor orientation: row 0, column 0 are the ones near the connectors.

*/

int Pin0 = A0;        // sensor attached to analog Pin0
int Pin1 = A1;            // sensor attached to analog Pin1
int Pin2 = A2;        // sensor attached to analog Pin2


int dPin[] = {2, 3, 4}; //declaration of the pins we will use; i is the position within the array; i = 0 corresponds to output 2
int i = 0;

int sensorValue0 = 0; //value read from line 0 of the sensor
int sensorValue1 = 1; //value read from line 1 of the sensor
int sensorValue2 = 2; //value read from line 2 of the sensor

int msensorValue0 = 0; // mapped value read from line 0 of the sensor
int msensorValue1 = 1; // mapped value read from line 1 of the sensor
int msensorValue2 = 2; // mapped value read from line 2 of the sensor

void setup() {
  
  for (int i = 2; i >= 0 ; i--) {
pinMode(dPin[i], OUTPUT);             //declaration of pin[i] as an OUTPUT

pinMode (Pin0, INPUT);             //declaration of INPUT pins
pinMode (Pin1, INPUT);
pinMode (Pin2, INPUT);

}
  Serial.begin(9600);   //turn serial on
}

void loop(){
  
 for (int i = 2; i >= 0 ; i--) { 
                                  
  digitalWrite (dPin[i], HIGH); //turn row i on 
  sensorValue0 = analogRead (Pin2); //read value column 0
  // wait 10 milliseconds before the next loop
  // for the analog-to-digital converter to settle
  // after the last reading:
  delay(5);   
  sensorValue1 = analogRead (Pin1); //read value column 1
  delay(5);
  sensorValue2 = analogRead (Pin0); //read value column 2
  delay(5);

  digitalWrite (dPin[i], LOW); //turn row i off 
  
   
 msensorValue0 = map (sensorValue0, 0, 1023, 255, 0);    //map all values read to a new range from 255 to 0
 msensorValue1 = map (sensorValue1, 0, 1023, 255, 0);
 msensorValue2 = map (sensorValue2, 0, 1023, 255, 0);
 
  
  Serial.print(msensorValue0);   //print first value on the serial port
  Serial.print(',');             // print comma
  Serial.print(msensorValue1);   //print second value on the serial port
  Serial.print(',');            //.....
  Serial.print(msensorValue2);
  Serial.print(',');

//  if (i > 0){                   //don't print the comma at the end for the first 7 packages of data
//  Serial.print(','); 
//}
}
Serial.println ();   //print a blank line - this line is important because Processing will start a serial event only after reading this blank line. 
}

Moderator edit: CODE TAGS. I despair. AWOL

Just guessing that some diodes might rectify the flow.