Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -module(main).
- -compile(export_all).
- -import(c, [flush/0]).
- %Otwarta raczka
- f(w, Pid, X, Y, A, B, 0)->
- get_data(Pid, X, Y + 1, A, B, 0);
- f(a, Pid, X, Y, A, B, 0)->
- get_data(Pid, X -1, Y, A, B, 0);
- f(s, Pid, X, Y, A, B, 0)->
- get_data(Pid, X, Y - 1, A, B, 0);
- f(d, Pid, X, Y, A, B, 0)->
- get_data(Pid, X+1, Y, A, B, 0);
- % Zamknieta raczka
- f(w, Pid, X, Y, X, Y, 1)->
- get_data(Pid, X, Y + 1, X, Y + 1, 1);
- f(a, Pid, X, Y, X, Y, 1)->
- get_data(Pid, X-1, Y, X - 1, Y, 1);
- f(s, Pid, X, Y, X, Y, 1)->
- get_data(Pid, X, Y - 1, X, Y - 1, 1);
- f(d, Pid, X, Y, X, Y, 1)->
- get_data(Pid, X + 1, Y, X + 1, Y, 1);
- % Zamykanie raczki
- f(r, Pid, X, Y, A, B, 0)->
- get_data(Pid, X, Y, A, B, 1);
- f(r, Pid, X, Y, A, B, 1)->
- get_data(Pid, X, Y, A, B, 0).
- get_data(Pid, X, Y, A, B, Raczka) ->
- io:format("Rączka: ~p", [Raczka]),
- io:format("Dzwig ma pozycje (x, y):\n"),
- io:format("(~p, ~p)\n",[X, Y]),
- io:format("Pudelko ma pozycje (x, y):\n"),
- io:format("(~p, ~p)\n", [A, B]),
- Pid ! {xd, Pid, X, Y, A, B, ok},
- {Res, Term} = io:read("Enter command(wasd + r): "),
- f(Term, Pid, X, Y, A, B, Raczka).
- b() ->
- receive
- {_, Pid, X, Y, A, B, ok} ->
- io:format("wyswietlamy\n");
- {_, Pid, X, Y, A, B, error} ->
- flush()
- end,
- b().
- start() ->
- My_pid = spawn(main, b, []),
- get_data(My_pid, 2, 2, 4, 4, 0).
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement