You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					54 lines
				
				1.4 KiB
			
		
		
			
		
	
	
					54 lines
				
				1.4 KiB
			| 
								 
											2 years ago
										 
									 | 
							
								const keyVals = {w: 0, a: 0, s: 0, d: 0}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export function getXY() {
							 | 
						||
| 
								 | 
							
								  let x = -keyVals.w + keyVals.s
							 | 
						||
| 
								 | 
							
								  let y = -keyVals.d + keyVals.a
							 | 
						||
| 
								 | 
							
								  return {x, y}
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export const handleKeyX = (key, setValue) => {
							 | 
						||
| 
								 | 
							
								  if (['w', 'a', 's', 'd'].includes(key)){
							 | 
						||
| 
								 | 
							
								    keyVals[key] = setValue;
							 | 
						||
| 
								 | 
							
								    let color = "#333";
							 | 
						||
| 
								 | 
							
								    if (setValue === 1){
							 | 
						||
| 
								 | 
							
								      color = "#e74c3c";
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    $("#key-"+key).css('background', color);
							 | 
						||
| 
								 | 
							
								    const {x, y} = getXY();
							 | 
						||
| 
								 | 
							
								    $("#pos-vals").text(x+","+y);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								export async function executePlan() {
							 | 
						||
| 
								 | 
							
								  let plan = $("#plan-text").val();
							 | 
						||
| 
								 | 
							
								  const planList = [];
							 | 
						||
| 
								 | 
							
								  plan.split("\n").forEach(function(e){
							 | 
						||
| 
								 | 
							
								    let line = e.split(",").map(k=>parseInt(k));
							 | 
						||
| 
								 | 
							
								    if (line.length != 5 || line.slice(0, 4).map(e=>[1, 0].includes(e)).includes(false) || line[4] < 0 || line[4] > 10){
							 | 
						||
| 
								 | 
							
								      console.log("invalid plan");
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    else{
							 | 
						||
| 
								 | 
							
								      planList.push(line)
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  async function execute() {
							 | 
						||
| 
								 | 
							
								    for (var i = 0; i < planList.length; i++) {
							 | 
						||
| 
								 | 
							
								      let [w, a, s, d, t] = planList[i];
							 | 
						||
| 
								 | 
							
								      while(t > 0){
							 | 
						||
| 
								 | 
							
								        console.log(w, a, s, d, t);
							 | 
						||
| 
								 | 
							
								        if(w==1){$("#key-w").mousedown();}
							 | 
						||
| 
								 | 
							
								        if(a==1){$("#key-a").mousedown();}
							 | 
						||
| 
								 | 
							
								        if(s==1){$("#key-s").mousedown();}
							 | 
						||
| 
								 | 
							
								        if(d==1){$("#key-d").mousedown();}
							 | 
						||
| 
								 | 
							
								        await sleep(50);
							 | 
						||
| 
								 | 
							
								        $("#key-w").mouseup();
							 | 
						||
| 
								 | 
							
								        $("#key-a").mouseup();
							 | 
						||
| 
								 | 
							
								        $("#key-s").mouseup();
							 | 
						||
| 
								 | 
							
								        $("#key-d").mouseup();
							 | 
						||
| 
								 | 
							
								        t = t - 0.05;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								  execute();
							 | 
						||
| 
								 | 
							
								}
							 |