Page 1 of 2

[drw] Освобождение от паутины

Posted: 26.03.2012 19:50
by Nearga
Одмины очередной раз улучшили геймплей и засрали очередную шахту пауками... есть ли какой метод вырваться пешим из паутины?

Re: [drw] Освобождение от паутины

Posted: 26.03.2012 20:39
by Lietman
да пустить в себя стрелку

Re: [drw] Освобождение от паутины

Posted: 26.03.2012 20:46
by Nearga
Хорошая идея.. еще варианты? :)
Жаль, что ножом нельзя - логично было бы.

Re: [drw] Освобождение от паутины

Posted: 26.03.2012 21:17
by yuras
Nearga wrote:Хорошая идея.. еще варианты? :)
Жаль, что ножом нельзя - логично было бы.
пометить её как непроходимую и не наступать.

Re: [drw] Освобождение от паутины

Posted: 26.03.2012 22:49
by Tiger89
Спасибо, заманчиво в качестве идеи кстати

Re: [drw] Освобождение от паутины

Posted: 26.03.2012 22:52
by Nearga
А если как вот тут?
http://clip2net.com/s/1JQCA

Кстати, еще идея была масс диспелл кинуть.

Re: [drw] Освобождение от паутины

Posted: 27.03.2012 0:04
by nepopus

Code: Select all

procedure checksilk(gx, gy: word);

  var
    r: integer;

  begin
    finddistance := 1;
	ignorereset;
    for r := 1 to high(spiderwebtype) do begin
	  while findtype(spiderwebtype[r], ground) > 0 do begin
	    if (getx(finditem) = gx) AND (gety(finditem) = gy) then begin
	      useobject(finditem);
		  checksave;
		  wait(300);
		  continue;
	    end;
		ignore(finditem);
	  end;

	end;
	finddistance := 25;
  end;

Code: Select all

function mymovexy(gx, gy: word; running: boolean): boolean;

  var
    r: integer;
	stepcount: integer;
    patharray: tpatharray;

  begin
    while (getx(self) <> gx) OR (gety(self) <> gy) do begin

	  stepcount := getpatharray(gx, gy, false, 0, patharray);
	  if stepcount = -1 then begin
	    result := false;
		exit;
	  end;

	  for r := 0 to stepcount-1 do begin
	    checksilk(patharray[r].x, patharray[r].y);
	    if NOT newmovexy(patharray[r].x, patharray[r].y, false, 0, running) then break;
        checksave;
		if running then wait(200) else wait(400);
	  end;
	end;
  end;
вот как я реализовал ходилку в шахте

Re: [drw] Освобождение от паутины

Posted: 27.03.2012 0:44
by Nearga
хм.. а может можно ее рвать скрптом? типа дергаться в разные стороны... никто не пробовал?
Просто паутины реально дофига, там и проход-то не всегда есть

Re: [drw] Освобождение от паутины

Posted: 27.03.2012 6:38
by Vizit0r
помечать паутину как badobject, и вперед. стелс сам клетки с ней проигнорит

Re: [drw] Освобождение от паутины

Posted: 27.03.2012 7:46
by nepopus
Vizit0r wrote:помечать паутину как badobject, и вперед. стелс сам клетки с ней проигнорит
А чем мой вариант не понравился. Ищет паутину на месте, куда будет наступать и юзает ее, пока она не сломается. : )

Re: [drw] Освобождение от паутины

Posted: 27.03.2012 9:49
by Vizit0r
тем, что после 3х откидываний стелс помечает точку как непроходимую.

Re: [drw] Освобождение от паутины

Posted: 27.03.2012 10:13
by Tiger89
Тут наверное надо ловить ивент на отказ сделать шаг, проверить есть ли под собой паутина, и сделать три шага )

Re: [drw] Освобождение от паутины

Posted: 27.03.2012 10:22
by Nearga
//и юзает ее, пока она не сломается. : )
вроде на ДРВ ее так сломать нельзя.

Более того, я еще заметил, что иногда герой может вляпаться в спайдер силк и застрять там надолго, я вообще хз как из него выбраться.

Re: [drw] Освобождение от паутины

Posted: 27.03.2012 22:22
by nepopus
Nearga wrote://и юзает ее, пока она не сломается. : )
вроде на ДРВ ее так сломать нельзя.

Более того, я еще заметил, что иногда герой может вляпаться в спайдер силк и застрять там надолго, я вообще хз как из него выбраться.
Проверьте сначало. я сам на дрв играю в данный момент и пишу скрипты именно под него.
И от паутины не откидывает, а персонаж застревает внутри. С чем, как мне кажется, справляется мой код.

Re: [drw] Освобождение от паутины

Posted: 28.03.2012 15:17
by yp9i
Кому мб и поможет - на вкус как говориться - землятрясения каст добавить (опасно правда) - зато сносит напрочь всю паутинку :lol: