게임명

Frost Punk

장르

생존 전략 운영

제작사

11bit studio

플레이 일

3

클리어 수

4

평점

★★★★

장점: 질리지 않는 多회차 플레이

단점: 어려운 시작


이 게임은 나에게 굉장한 경험을 선사해 주었다. 시대적 배경은

과거 산업혁명시기인 것 같다. 인류에게 빙하기가 오게 되어 사

들은 발전기를 이용해서 목숨을 부지하려 한.


그 사람들의 지도자가 되어 한정되어있는 자원들을 효율적으로

사용하여 생존하는 게임이다. 하지만 텍스트만의 설명으로는

게임을 헤쳐 나갈 수 없다. 중간중간 발생하는 이벤트도 흥

미롭고, 선택지에 따라 게임의 결과가 달라질 수 있다. 하지만

그런 서브 이벤트가 한정되어 있어 나중에는 속된말고인

이 된다. 사람들의 희망과 불만수치도 잘 관리 해 주어야한

.


추후 나올 모드나 패치들이 상당히 기대가 되는 작품이다. 또한

반대로 빙하기가 아닌 아열대 모드같은 것도 충분히 나올 만 하

재미있을 것이다.


ActivityMain.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
>

<HorizontalScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="5">

<ScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content">

<ImageView
android:id="@+id/up"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/friends"
android:visibility="visible" />
</ScrollView>
</HorizontalScrollView>

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_gravity="center"

>
<Button
android:id="@+id/upBut"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="UP"
android:onClick="UP"/>
<Button
android:id="@+id/downBut"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="DOWN"
android:onClick="DOWN"/>

</LinearLayout>

<HorizontalScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="5">

<ScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content">

<ImageView
android:id="@+id/down"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/friends"
android:visibility="invisible" />
</ScrollView>
</HorizontalScrollView>

</LinearLayout>

MainActivity.java

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;

public class MainActivity extends AppCompatActivity {
ImageView up;
ImageView down;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
up = (ImageView) findViewById(R.id.up);
down = (ImageView) findViewById(R.id.down);
}



public void UP(View v){
upimage();
}
public void DOWN(View v){
downimage();
}

private void upimage(){
up.setVisibility(View.VISIBLE);
down.setVisibility(View.INVISIBLE);

}
private void downimage(){
up.setVisibility(View.INVISIBLE);
down.setVisibility(View.VISIBLE);
}
}

실행화면

 

기본 화면

 

down 버튼 누르면

up 버튼 누르면

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent>


<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ff5555ff"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Base Area"
android:textColor="#ffffffff"
/>
</LinearLayout>

<LinearLayout
android:id="@+id/page"
android:orientation="vertical"
android:layout_width="200dp"
android:layout_height="match_parent"
android:layout_gravity="right"
android:background="#ffffff66"
android:visibility="gone"
>
<TextView
android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="area #1"
android:textColor="#ff000000"
/>
<TextView
android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="area #2"
android:textColor="#ff000000"
/>
</LinearLayout>

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="right|center_vertical"
android:background="#00000000">

<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="open"
/>
</LinearLayout>

</FrameLayout>

mainActivity.java



import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.Button;
import android.widget.LinearLayout;

public class MainActivity extends AppCompatActivity {
boolean ispageOpen = false;

Animation leftanim;
Animation rightanim;
LinearLayout page;
Button button;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
page = (LinearLayout) findViewById(R.id.page);

leftanim = AnimationUtils.loadAnimation(this, R.anim.leftslide);
rightanim = AnimationUtils.loadAnimation(this, R.anim.rightslide);

SlidingPageAnimationListener listener = new SlidingPageAnimationListener();
leftanim.setAnimationListener(listener);
rightanim.setAnimationListener(listener);
button = (Button) findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (ispageOpen) {
page.startAnimation(rightanim);
} else {
page.setVisibility(View.VISIBLE);
page.startAnimation(leftanim);
}
}
});

}

private class SlidingPageAnimationListener implements Animation.AnimationListener{
@Override
public void onAnimationStart(Animation animation) {

}

public void onAnimationEnd(Animation animation) {
if (ispageOpen) {
page.setVisibility(View.INVISIBLE);

button.setText("open");
ispageOpen = false;
} else {
button.setText("close");
ispageOpen = true;
}
}

@Override
public void onAnimationRepeat(Animation animation) {

}
}
}

실행화면

버튼 클릭 전

 

버튼 클릭후

 

+ Recent posts