{"title":"p3","subtitle":"","coverImg":"","contentType":"text/plain","content":"function raid(s,dt){var r=s.raid;\n if(!r.active&&s.hour>=T('raidHour')&&s.hour=6&&s.hour<20){s.entities=s.entities.filter(function(e){return e.kind!=='hound';});\n r.active=false;r.phase='none';log(s,'天亮了,狗群退去。');}}}\nfunction update(s,dt,inp){if(!s||s.over)return s;dt=cl(dt||0,0,0.1);s.t+=dt;if(acd>0)acd-=dt;\n var p=s.player,i,e,dl=T('dayLen');\n s.hour+=dt*24/dl;while(s.hour>=24){s.hour-=24;s.day++;}\n s.season=seasonOf(s.day);\n var dx=(inp&&inp.dx)||0,dy=(inp&&inp.dy)||0,sp=T('speed');\n if(dx||dy){var m=Math.sqrt(dx*dx+dy*dy)||1;\n p.x=cl(p.x+dx/m*sp*dt,0.5,MAP.w-0.5);p.y=cl(p.y+dy/m*sp*dt,0.5,MAP.h-0.5);\n p.facing=Math.abs(dx)>=Math.abs(dy)?(dx>0?'right':'left'):(dy>0?'down':'up');}\n s.zone=zoneAt(p.x);\n if(p.shelter){var nsp=false;for(i=0;i=c.growDays){e.ripe=true;log(s,c.name+' 成熟了,可以收获。');}}\n if(inp&&inp.action&&inp.action!=='none'&&acd<=0){acd=0.3;\n if(inp.action==='interact')interact(s);else if(inp.action==='build')build(s,inp.actionId);\n else if(inp.action==='attack')attack(s);}\n if(cb){s.spawnT+=dt;if(s.spawnT>T('spawnEvery')){s.spawnT=0;\n var cn=0;for(i=0;i6){s.shadowT=0;spawnShadow(s);log(s,'阴影在视野边缘聚拢……');}}}\n var del=[];\n for(i=0;i0.7){e.x+=(p.x-e.x)/d*sd*dt;e.y+=(p.y-e.y)/d*sd*dt;}}\n d=ds(e,p.x,p.y);\n if(d<1){if(e.kind==='shadow'){p.sanity=Math.max(0,p.sanity-dt*6);p.hp=Math.max(0,p.hp-dt*2);}\n else if(!(e.kind==='hound'&&p.shelter))p.hp=Math.max(0,p.hp-dt*dmg);}\n if(e.hp!=null&&e.hp<=0)del.push(e);}\n for(i=del.length-1;i>=0;i--)s.entities.splice(s.entities.indexOf(del[i]),1);\n raid(s,dt);\n if(p.hunger<=0)return fail(s,'hunger');\n if(p.hp<=0)return fail(s,'health');\n if(p.sanity<=0)return fail(s,'sanity');\n return s;}\nreturn {MAP:MAP,zoneAt:zoneAt,seasonOf:seasonOf,init:init,update:update,tuning:T};\n})(typeof window!=='undefined'?window:this);\n","encryption":"0","createTime":1793515360176,"tags":[],"attachments":[]}