所以我在septemeber开始了一个Web开发课程,我们将用C#编程.所以我开始学习它,所以我有一些经验.现在我有大约2年的HTML,CSS和PHP经验,所以我马上选择了C#.
我正在上课,我通过做而不是阅读来学习.我决定制作一个小型的基于控制台的RPG来学习课程.我有一个基本的游戏,但我有一个问题.我正试图在另一个类中显示Player类中的玩家库存.
我正在使用List来保存玩家库存.
public List<string> inventory = new List<string>();
Run Code Online (Sandbox Code Playgroud)
这是在Players类文件中.
然后在商店类,我正在做;
Player player = new Player();
Run Code Online (Sandbox Code Playgroud)
创建一个新对象来访问播放器类.然后在店里给List添加一些东西,我正在做;
player.inventory.Add("Axe");
Run Code Online (Sandbox Code Playgroud)
但是如果我player.inventory();在控制台中打印出来,我会收到一个错误 - System.Collections.Generic.List`1 [System.String].
有人可以帮我吗?我需要提供更多代码吗?
大约两周前我最近问了一个类似的问题,但是我没有看到我的问题以我需要的方式运行.
我有一个从2个表中选择的查询; 门票和回复.我正在从故障单表中选择信息,并且我从回复表中选择了存储有票证ID的信息.这就是我的问题.
我的查询只显示回复超过0的票证,但我需要它才能显示票证信息,即使它没有任何回复.
我想知道(如果可能的话)是否有任何方法可以解决我的问题,如果有办法让它比我现在拥有它更简单.
现在它有点乱,但这是我的代码,用于查询和显示故障单和回复.
if(isset($_GET['id']) && is_numeric($_GET['id'])) {
$id = trim($_GET['id']);
$i = "";
$ticket = $db->conn->query("
SELECT * FROM tickets
INNER JOIN replies ON tickets.id = '$id'") or die(mysqli_error($db->conn));
while($rows = $ticket->fetch_assoc()) {
$i++;
if($_SESSION['ticket_username'] == $rows['client']) {
if($i <= 1) {
$status = $rows['status'];
echo '
<h3>'.$rows['subject'].'</h3><hr>
<div class="panel panel-danger">
<div class="panel-heading">
<h3 class="panel-title"><small>Created by '.$rows['client'].', '.$timeAgo->inWords($rows['created_at']).'</small></h3>
</div>
<div class="panel-body">'.nl2br($rows['message']).'</div>
</div>
';
}
echo '
<div class="panel panel-info">
<div class="panel-heading">
<h3 class="panel-title"><small>Reply from '.$rows['reply_username'].', '.$timeAgo->inWords($rows['reply_time']).'</small></h3>
</div> …Run Code Online (Sandbox Code Playgroud) 因此,当用户键入"Load"时,我正在尝试从文本文件中加载一些数据.我有点工作,但似乎有一个错误.
假设你买了一把斧头,这是70个硬币.你从100个硬币开始,所以剩下30个硬币.您决定保存并退出游戏.你回来加载你保存的游戏,你有49个硬币和48个健康点.
当您使用所有默认值直接保存时,它也会执行完全相同的操作.我不知道从哪里获得49和48的价值.
const string f = "savedgame.txt";
using (StreamReader r = new StreamReader(f))
{
string line;
while ((line = r.ReadLine()) != null)
{
player.gold = line[0];
player.health = line[1];
Console.WriteLine("Your game has been loaded.");
menu.start(menu, shop, player, fishing, woodcut, mine, monster, quests, save, load);
}
}
Run Code Online (Sandbox Code Playgroud)
这是我刚刚保存的文本文件.
100
20
1
0
0
5
Run Code Online (Sandbox Code Playgroud)
我试过谷歌的例子,但他们做了同样的事情.所以我做了一些研究,自己做了一个......做了同样的事情.
我不知道我能告诉你们多少,但如果需要,我可以展示更多.
难道我做错了什么?