// File: /workspace/github_cpp_makefile_star2_O3/essarrdee[P]mutantaliens/mutantaliens.cpp
// Function: draw_info(int, int)
void draw_info(int x,int y)
{
	current_mode = INFO_MODE;
	draw_stats();
	std::string s;
	//for(int i = 0; y<10; y++)
	//{
	//	mvaddstr(i,0,std::string(viewport_width,' ').c_str());
	//}
	if(map_items[x][y] != NULL)
	{
		if(map_items[x][y]->device_type != NOT_DEVICE)
		{
			update_device_desciption(map_items[x][y]);
		}
		//mvprintw(0,0,map_items[x][y]->description.c_str());
		s += map_items[x][y]->description;
	}
	if(map_occupants[x][y] != NULL)
	{
		actor* a = map_occupants[x][y];
	//mvprintw(0,0,map_occupants[x][y]->sspecies->description.c_str());
		s += a->sspecies->description;
		if(a->running) s += " It is running.";
		if(a->stamina < a->sspecies->stamina/4) s+= " It looks exhausted.";
		else if(a->stamina < a->sspecies->stamina/2) s += " It looks sweaty.";
		if(a->health > (3*a->sspecies->min_health)/4) s+= " It looks healthy.";
		else if(a->health > (a->sspecies->min_health/2)) s += "It looks slightly wounded.";
		else if(a->health > (a->sspecies->min_health/4)) s += "It looks heavily wounded.";
		else s += "It looks close to death.";
		if(a->sspecies->psychic_range) s+= " It is psychic.";
	    if(a->sspecies->smell_clarity >= 1.0f) s += " It has a good sense of smell.";
		else if(a->sspecies->smell_clarity != 0.0f) s += " It has a sense of smell.";
		if(a->sspecies->vis_range >= 8) s += " It can see well.";
		else if(a->sspecies->vis_range >= 4) s+= " It can just about see.";

	}
	pretty_print(s);
	getch();
	draw_scene();
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x40, %rsp
movl %esi, %ebx
movl %edi, %ebp
movl $0x3, 0x10d46(%rip)     # 0x21318
callq 0xf035
leaq 0x10(%rsp), %r14
movq %r14, -0x10(%r14)
movq $0x0, -0x8(%r14)
movb $0x0, (%r14)
movslq %ebp, %rax
movslq %ebx, %rbx
imulq $0x4b0, %rax, %r15      # imm = 0x4B0
leaq 0x89ec0(%rip), %r12     # 0x9a4c0
addq %r15, %r12
movq (%r12,%rbx,8), %rdi
testq %rdi, %rdi
je 0x1062e
cmpl $-0x1, 0x70(%rdi)
je 0x1061e
callq 0xd453
leaq (%r12,%rbx,8), %rax
movq (%rax), %rdi
movq 0x30(%rdi), %rsi
movq 0x38(%rdi), %rdx
movq %rsp, %rdi
callq 0x50c0
leaq 0x5debb(%rip), %rax     # 0x6e4f0
addq %r15, %rax
movq (%rax,%rbx,8), %rbx
testq %rbx, %rbx
je 0x10787
movq (%rbx), %rax
movq 0x110(%rax), %rsi
movq 0x118(%rax), %rdx
movq %rsp, %rdi
callq 0x50c0
cmpb $0x1, 0x14(%rbx)
jne 0x10673
leaq 0x8aee(%rip), %rsi      # 0x19159
movq %rsp, %rdi
callq 0x5410
movl 0x18(%rbx), %eax
movq (%rbx), %rcx
movl 0x34(%rcx), %ecx
leal 0x3(%rcx), %edx
testl %ecx, %ecx
cmovnsl %ecx, %edx
sarl $0x2, %edx
cmpl %edx, %eax
jge 0x10694
leaq 0x8ad7(%rip), %rsi      # 0x19169
jmp 0x106a8
movl %ecx, %edx
shrl $0x1f, %edx
addl %ecx, %edx
sarl %edx
cmpl %edx, %eax
jge 0x106b0
leaq 0x8ad6(%rip), %rsi      # 0x1917e
movq %rsp, %rdi
callq 0x5410
movl 0xc(%rbx), %eax
movq (%rbx), %rcx
movl 0x4(%rcx), %ecx
leal (%rcx,%rcx,2), %edx
leal (%rcx,%rcx,2), %esi
addl $0x3, %esi
testl %edx, %edx
cmovnsl %edx, %esi
sarl $0x2, %esi
cmpl %esi, %eax
jle 0x106d7
leaq 0x8abb(%rip), %rsi      # 0x19190
jmp 0x1070c
movl %ecx, %edx
shrl $0x1f, %edx
addl %ecx, %edx
sarl %edx
cmpl %edx, %eax
jle 0x106ed
leaq 0x8ab8(%rip), %rsi      # 0x191a3
jmp 0x1070c
leal 0x3(%rcx), %edx
testl %ecx, %ecx
cmovnsl %ecx, %edx
sarl $0x2, %edx
cmpl %edx, %eax
leaq 0x8abd(%rip), %rax      # 0x191be
leaq 0x8ad0(%rip), %rsi      # 0x191d8
cmovgq %rax, %rsi
movq %rsp, %rdi
callq 0x5410
movq (%rbx), %rax
cmpl $0x0, 0x20(%rax)
je 0x1072f
leaq 0x8acd(%rip), %rsi      # 0x191f1
movq %rsp, %rdi
callq 0x5410
movq (%rbx), %rax
movss 0x14(%rax), %xmm0
ucomiss 0x78d9(%rip), %xmm0     # 0x18014
jae 0x10750
xorps %xmm1, %xmm1
ucomiss %xmm1, %xmm0
jne 0x10747
jnp 0x1075f
leaq 0x8ad2(%rip), %rsi      # 0x19220
jmp 0x10757
leaq 0x8aaa(%rip), %rsi      # 0x19201
movq %rsp, %rdi
callq 0x5410
movq (%rbx), %rax
movl 0x10(%rax), %eax
cmpl $0x7, %eax
jle 0x10773
leaq 0x8ac9(%rip), %rsi      # 0x1923a
jmp 0x1077f
cmpl $0x4, %eax
jl 0x10787
leaq 0x8acd(%rip), %rsi      # 0x1924c
movq %rsp, %rdi
callq 0x5410
leaq 0x30(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
addq %rsi, %rdx
leaq 0x20(%rsp), %rdi
callq 0x15f56
leaq 0x20(%rsp), %rdi
callq 0x688f
movq 0x20(%rsp), %rdi
cmpq %r15, %rdi
je 0x107bf
callq 0x5230
movq 0x10812(%rip), %rax     # 0x20fd8
movq (%rax), %rdi
callq 0x50f0
xorl %edi, %edi
callq 0x10355
movq (%rsp), %rdi
cmpq %r14, %rdi
je 0x107e3
callq 0x5230
addq $0x40, %rsp
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
movq 0x20(%rsp), %rdi
cmpq %r15, %rdi
je 0x10809
callq 0x5230
jmp 0x10809
jmp 0x10806
movq %rax, %rbx
movq (%rsp), %rdi
cmpq %r14, %rdi
je 0x10817
callq 0x5230
movq %rbx, %rdi
callq 0x53d0